我想使用matplotlib创建一个分散的三维绘图,投影表面看起来像这个演示,但使用的是我从excel创建的CSV文件,其中xyz数据包含在3列数字中。在
这是演示代码。。。在
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm
fig = plt.figure()
ax = fig.gca(projection='3d')
X, Y, Z = axes3d.get_test_data(0.05)
ax.plot_surface(X, Y, Z, rstride=8, cstride=8, alpha=0.3)
cset = ax.contourf(X, Y, Z, zdir='z', offset=-100, cmap=cm.coolwarm)
cset = ax.contourf(X, Y, Z, zdir='x', offset=-40, cmap=cm.coolwarm)
cset = ax.contourf(X, Y, Z, zdir='y', offset=40, cmap=cm.coolwarm)
ax.set_xlabel('X')
ax.set_xlim(-40, 40)
ax.set_ylabel('Y')
ax.set_ylim(-40, 40)
ax.set_zlabel('Z')
ax.set_zlim(-100, 100)
plt.show()
您只需使用
csv.reader
来加载数据,然后将它们映射到float。 然后你需要把它们做成纽比的形状。在编辑:忘记改变值的形状;更新了代码。在
相关问题 更多 >
编程相关推荐