在matplotlib scatter3d中设置zlim

时间:2016-05-30 09:16:35

标签: 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')
ax.scatter(xs, ys, zs)  
plt.savefig('dateiname.png')
plt.close()

plt.xlim()plt.ylim()工作正常,但我找不到在z方向设置边框的功能。我怎么能这样做?

1 个答案:

答案 0 :(得分:10)

只需使用set_zlim对象的axes功能(就像您之前使用的set_zlabel一样,plt.zlabel也不可用):

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)