我有一个包含三列数据的表格形式的文本文件。 我使用np.genfromtxt将所有列读入matplotlib作为x,y,z。
我想创建一个颜色网格图,其中x和y是坐标,z代表颜色,我认为人们将这样的图称为热力图。
我的代码如下:
x = np.genfromtxt('mesh.txt', dtype=float, delimiter=' ', usecols = (0))
y = np.genfromtxt('mesh.txt', dtype=float, delimiter=' ', usecols = (1))
z = np.genfromtxt('mesh.txt', dtype=float, delimiter=' ', usecols = (2))
xmesh, ymesh = np.meshgrid(x,y)
diagram1.pcolormesh(xmesh,ymesh,z)
但是我收到了以下错误信息:
line 7154, in pcolormesh
C = ma.ravel(C[0:Ny-1, 0:Nx-1]) # data point in each cell is value at
IndexError: too many indices
文本文件如下:
1 1 5
2 1 4
3 1 2
4 1 6
1 2 6
2 2 2
3 2 1
4 2 9
1 3 7
2 3 4
3 3 3
4 3 5
1 4 3
2 4 4
3 4 7
4 4 6
这个问题该如何解决?
from matplotlib.mlab import griddata
不再起作用了,而在scipy.interpolate
中,griddata
已被替换为不同的语法。是否可能更新这个有用的答案? - Aerinmund Fagelsoncannot import name 'griddata' from 'matplotlib.mlab'
- ru111