在子图中使用 view_init 设置 3d 视角

Sle*_*ead 5 python matplotlib

我试图改变我的图的一个子图中的角度,它是一个 3d 图。我愿意:

import matplotlib.pyplot as plt
f1 = plt.figure()
ax1 = f1.add_subplot(2, 1, 1, projection='3d')
ax1.view_init(20, -120)
Run Code Online (Sandbox Code Playgroud)

但这并不会改变观点。我究竟做错了什么?

fin*_*oot 8

添加后

from mpl_toolkits.mplot3d import Axes3D
Run Code Online (Sandbox Code Playgroud)

对于您的导入,您的代码应该可以正常工作。这是我使用的完整代码:

from mpl_toolkits.mplot3d import Axes3D
Run Code Online (Sandbox Code Playgroud)

由此可见:

图1

并将其与另一个视图进行比较,ax1.view_init(-120, 20)例如,它显示:

图2

顺便说一句,linter 可能会抱怨“unused import” ,所以我Axes3D不是在上面的代码中编写的。请参阅如何在标准图中直接使用 matplotlib 中的 Axes3D 以避免 flake8 错误以供进一步阅读。projection='3d'projection=Axes3D.name