在matplotlib scatter3d中设置zlim
我在Python中有三个数据点列表xs、ys、zs,我正在尝试使用在matplotlib scatter3d中设置zlim,matplotlib,scatter3d,Matplotlib,Scatter3d,我在Python中有三个数据点列表xs、ys、zs,我正在尝试使用matplotlib方法scatter3d创建一个3d绘图 import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot(111, projection='3d') plt.xlim(290) plt.ylim(301) ax.set_xlabel('X') ax.set_ylabel('Y') ax.set_zlabel('Z')
matplotlib
方法scatter3d
创建一个3d绘图
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
plt.xlim(290)
plt.ylim(301)
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.scatter(xs, ys, zs)
plt.savefig('dateiname.png')
plt.close()
plt.xlim()
和plt.ylim()
工作正常,但我没有找到一个函数来设置z方向的边界。如何操作?只需使用轴
对象的set\u zlim
功能(就像您已经使用set\u zlabel
一样,它也不可用作plt.zlabel
):
为什么没有实现
plt.zlim
?这将使mpl更加一致,人们不必在这里问这个问题。@Sören。三维打印是一种扩展。也就是说,我不认为有任何理由不能让相关导入在plt名称空间中设置一个加法函数
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
xs = np.random.random(10)
ys = np.random.random(10)
zs = np.random.random(10)
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.scatter(xs, ys, zs)
ax.set_zlim(-10,10)