使用来自matplotlib的函数^{}和^{},给定的X Y Z数据可以类似于given plot绘制。在import sys
import csv
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d
# Read CSV
csvFileName = sys.argv[1]
csvData = []
with open(csvFileName, 'r') as csvFile:
csvReader = csv.reader(csvFile, delimiter=' ')
for csvRow in csvReader:
csvData.append(csvRow)
# Get X, Y, Z
csvData = np.array(csvData)
csvData = csvData.astype(np.float)
X, Y, Z = csvData[:,0], csvData[:,1], csvData[:,2]
# Plot X,Y,Z
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_trisurf(X, Y, Z, color='white', edgecolors='grey', alpha=0.5)
ax.scatter(X, Y, Z, c='red')
plt.show()
在这里包含X Y Z数据的文件作为上述脚本的参数提供
在plot_trisurf中,用于控制外观的参数。e、 g.alpha用于控制表面不透明度
在scatter中,c参数指定绘制在曲面上的点的颜色
对于给定的数据文件,将生成以下绘图
注意:在这里,地形是由给定的一组三维点的三角剖分形成的。所以,在绘图中沿曲面的等高线并没有和X轴和Y轴对齐