【发布时间】:2013-08-12 15:26:35
【问题描述】:
我有三列文件,500 万行。就像
x,y,z
3,4,6.7
9,4,7.8
X 和 y 是像素数,z 是 (x,y) 处的对应值
如何绘制热图?
2D 情节是对我最初想法的妥协。
你可以查看我的原帖
How to use griddata from scipy.interpolate
我尝试了下面的方法,但它只是一个散点图。
import numpy as np
import pylab as pl
x,y,z =np.loadtxt('3columns.csv',delimiter=',',usecols=(0,1,2),unpack=True)
pl.scatter(x, y, c=z)
pl.show()
【问题讨论】:
-
是否有重复项? .csv 中是否表示所有可能的坐标或是否有未定义的像素?
-
您想要某种 3D 曲面图而不是 2D 散点图吗?如果有,你看过matplotlib.org/mpl_toolkits/mplot3d/tutorial.html 吗?
-
由于管道的原因有很多重复。许多像素值是相同的,但所有像素都已定义...我已经检查了该链接。我更喜欢应该使用网格数据的 3d 曲面图。数据有点不规则,所以也许应该先建立一个网格。
标签: matplotlib