Skip to main content
 首页 » 编程设计

python之在 matplotlib 中缩放轴 3d

2025年05月04日13mfrbuaa

我在 matplotlib 中缩放轴 3d 时遇到问题。我发现了另一个问题,但不知何故答案似乎不起作用。这是一个示例代码:

import matplotlib as mpl 
import numpy as np 
from mpl_toolkits.mplot3d import Axes3D 
import matplotlib.pyplot as plt 
 
data=np.array([[0,0,0],[10,1,1],[2,2,2]]) 
 
fig=plt.figure() 
ax=Axes3D(fig) 
ax.set_xlim3d(0,15) 
ax.set_ylim3d(0,15) 
ax.set_zlim3d(0,15) 
ax.scatter(data[:,0],data[:,1],data[:,2]) 
plt.show() 

它似乎只是忽略了 ax.set 命令...

请您参考如下方法:

根据我的经验,您必须在绘制数据后设置坐标轴限制,否则它会查看您的数据并调整您之前输入的任何坐标轴设置,以使其全部在框架内适合沿坐标轴的下一个方便的增量有问题。例如,如果您将 x 轴限制设置为 +/-400,但您的数据约为 +/-1700,而 matplotlib 决定以 500 为增量标记 x 轴,它将显示相对于一个 x 轴到 +/-2000。

因此在您的情况下,您只想将最后一段文本重新排列为:

fig=plt.figure() 
ax=Axes3D(fig) 
ax.scatter(data[:,0],data[:,1],data[:,2]) 
ax.set_xlim3d(0,15) 
ax.set_ylim3d(0,15) 
ax.set_zlim3d(0,15) 
plt.show()