我正在尝试更改我的图形的一个子图中的角度,这是一个 3d 图。我愿意:
import matplotlib.pyplot as plt
f1 = plt.figure()
ax1 = f1.add_subplot(2, 1, 1, projection='3d')
ax1.view_init(20, -120)
但这并没有改变看法。我究竟做错了什么?
我正在尝试更改我的图形的一个子图中的角度,这是一个 3d 图。我愿意:
import matplotlib.pyplot as plt
f1 = plt.figure()
ax1 = f1.add_subplot(2, 1, 1, projection='3d')
ax1.view_init(20, -120)
但这并没有改变看法。我究竟做错了什么?
添加后
from mpl_toolkits.mplot3d import Axes3D
对于您的导入,您的代码应该可以正常工作。这是我使用的完整代码:
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
f1 = plt.figure()
ax1 = f1.add_subplot(2, 1, 1, projection=Axes3D.name)
ax1.view_init(20, -120)
plt.show()
由此可见:
并将其与另一个视图进行比较,ax1.view_init(-120, 20)
例如,它显示:
顺便说一句,linter 可能会抱怨 "unused import" Axes3D
,所以projection='3d'
我没有projection=Axes3D.name
在上面的代码中编写。请参阅如何在标准绘图中直接使用 matplotlib 中的 Axes3D 以避免 flake8 错误以供进一步阅读。