使用来自文本文件的数据在python中进行3D绘图的问题

时间:2017-06-24 18:19:54

标签: python numpy plot

我一直在尝试导入一个文本文件并使用"线框"在python中绘制它,虽然我一直收到错误说:

" ValueError:形状不匹配:无法将对象广播为单个形状"。

如果有人能帮助我,我将不胜感激。 我的输入文本文件格式如下:

11 12 13 14

21 22 23 24

31 32 33 34

,代码是:

`import os
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
import numpy as np

data = np.genfromtxt('X1slackresultsforplot.txt', delimiter=' ')

x = [0.78,0.79,0.8]
y = [10,20,30,40]
Z = np.array(data)
X, Y = np.meshgrid(x, y)

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_wireframe(X,Y,Z,rstride=10,cstride=10)
plt.show()`

感谢。

1 个答案:

答案 0 :(得分:1)

X和Y具有形状(4,3),但Z具有形状(3,4)。也许你想要Z的转置?以下运行没有错误:

ax.plot_wireframe(X,Y,Z.T,rstride=10,cstride=10)