【问题标题】:Cannot create a 3D axes in matplotlib无法在 matplotlib 中创建 3D 轴
【发布时间】:2017-07-14 13:19:30
【问题描述】:

我正在尝试制作 3D 绘图,但无法创建 3D 轴。

当我尝试时,它给了我一个错误,指出“ValueError: Unknown projection '3d'”。

这是我尝试创建 Axes 对象的方法

import matplotlib.pyplot as plt 

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

plt.show()

如何在 matplotlib 中创建 3D Axes 对象?

【问题讨论】:

  • 你必须像from mpl_toolkits.mplot3d import Axes3D这样导入3d轴

标签: matplotlib


【解决方案1】:

要创建 3D 轴,您需要导入 mplot3d 工具包:

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

plt.show()

图库中有几个 3D 示例: http://matplotlib.org/examples/mplot3d

【讨论】:

    【解决方案2】:

    来自Matplotlib documentation,“投影的有效值为:[‘aitoff’, ‘hammer’, ‘lambert’, ‘mollweide’, ‘polar’, ‘rectilinear’]”。

    您正在为 add_subplot() 方法提供无效的关键字参数。看起来您正在尝试在笛卡尔坐标中创建 3D 图。制作这样的图不需要投影关键字。

    【讨论】:

    • 这没有错,但如果导入了正确的工具包,3D 可以是有效的投影。看我的回答。
    猜你喜欢
    • 2019-05-18
    • 1970-01-01
    • 2011-05-02
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 2018-03-25
    相关资源
    最近更新 更多