Python 使用matplotlib创建三维曲面打印

Python 使用matplotlib创建三维曲面打印,python,matplotlib,Python,Matplotlib,我有一个数据文件,里面有2000000个数据点(x,y,z),我正试图把这些信息绘制成一张曲面图,放到一张纸上。它最后给我的图形看起来可能有10个数据点,而不是我需要的全部势能面。我需要做什么才能得到更好的图表 这是我的密码: with open("surfaceinfo.dat", "rb") as f: CN_data = pickle.load(f) CC_data = pickle.load(f) energy = pickle.load(f) plotx,pl

我有一个数据文件,里面有2000000个数据点(x,y,z),我正试图把这些信息绘制成一张曲面图,放到一张纸上。它最后给我的图形看起来可能有10个数据点,而不是我需要的全部势能面。我需要做什么才能得到更好的图表

这是我的密码:

with open("surfaceinfo.dat", "rb") as f:
    CN_data = pickle.load(f)
    CC_data = pickle.load(f)
    energy = pickle.load(f)

plotx,ploty, = np.meshgrid(np.linspace(np.min(CN_data),np.max(CN_data),10),
                           np.linspace(np.min(CC_data),np.max(CC_data),10))
plotz = interp.griddata((CN_data,CC_data),energy(plotx,ploty),method='linear')
plotz = np.nan_to_num(plotz)

fig = plt.figure()
ax = fig.gca(projection='3d')

colormap = plt.cm.bwr
surf = ax.plot_surface(plotx,ploty,plotz,cmap=colormap,linewidth=0,antialiased=False)

fig.colorbar(surf)

plt.savefig('mapping40,000')

plt.show()

linspace函数的第三个参数是所需的点数。在代码中,该值为10。因此,曲面将有10x10个点。更改该参数以设置曲面上的点数。

曲面上的
CN\u数据
CC\u数据
能量(plotx,ploty)
的形状是什么?