mpl_toolkits.mplot3d#

mplot3d 工具包通过提供可以创建 3D 场景的 2D 投影的 Axes 对象,为 Matplotlib 添加了简单的 3D 绘图功能(散点、曲面、线、网格等)。生成的图形将具有与常规 2D 绘图相同的外观。不是最快或功能最完整的 3D 库,但它与 Matplotlib 一起提供,因此对于某些用例来说可能是一个更轻量级的解决方案。

有关更多信息,请参阅mplot3d 教程

../../_images/demo_mplot3d.png

交互式后端还提供旋转和缩放 3D 场景的能力。只需单击并拖动场景即可旋转 3D 场景。通过单击鼠标中键完成平移,通过右键单击场景并上下拖动鼠标完成缩放。与 2D 绘图不同,不使用工具栏平移和缩放按钮。

笔记

pyplot不能用于向 3D 绘图添加内容,因为它的函数签名是严格的 2D 并且无法处理 3D 所需的附加信息。相反,通过调用对象上的相应方法来使用显式 API Axes3D

axes3d#

笔记

Matplotlib 中的 3D 绘图仍然不如 2D 案例成熟。请报告任何不符合预期的功能作为错误。此外,我们将不胜感激帮助和补丁!

axes3d.Axes3D(fig[, rect, elev, azim, roll, ...])

3D 轴对象。

axis3d#

笔记

请参阅mpl_toolkits.mplot3d.axis3d._axinfo包含可以修改以控制 mplot3d 轴的外观和感觉的常量的字典(例如,标签间距、字体颜色和面板颜色)。从历史上看,axis3d 的硬编码常量会妨碍用户进行调整,因此该字典在 1.1 版中作为权宜之计实现。

axis3d.Axis(轴,* [,旋转标签])

用于 3D 绘图的 Axis 类。

art3d#

art3d.Line3D(xs, ys, zs, *args, **kwargs)

3D 线对象。

art3d.Line3DCollection(段,* [,zorder])

3D 线条的集合。

art3d.Patch3D(*args[, zs, zdir])

3D 补丁对象。

art3d.Patch3DCollection(*args[, zs, zdir, ...])

3D 补丁的集合。

art3d.Path3DCollection(*args[, zs, zdir, ...])

3D 路径的集合。

art3d.PathPatch3D(路径,* [,zs,zdir])

3D PathPatch 对象。

art3d.Poly3DCollection(顶点, *args[, zsort])

3D 多边形的集合。

art3d.Text3D([x, y, z, 文本, zdir])

具有 3D 位置和方向的文本对象。

art3d.get_dir_vector(zdir)

返回一个方向向量。

art3d.juggle_axes(xs, ys, zs, zdir)

重新排列坐标,以便可以在与 zdir 正交的平面上绘制 2D xs、ys。

art3d.line_2d_to_3d(行[, zs, zdir])

将 2D 线转换为 3D。

art3d.line_collection_2d_to_3d(col[, zs, zdir])

将 LineCollection 转换为 Line3DCollection 对象。

art3d.patch_2d_to_3d(补丁[, z, zdir])

将 Patch 转换为 Patch3D 对象。

art3d.patch_collection_2d_to_3d(col[, zs, ...])

将 aPatchCollection转换为Patch3DCollection对象(或将 aPathCollection转换为Path3DCollection对象)。

art3d.pathpatch_2d_to_3d(路径补丁[, z, zdir])

将 PathPatch 转换为 PathPatch3D 对象。

art3d.poly_collection_2d_to_3d(col[, zs, zdir])

将 PolyCollection 转换为 Poly3DCollection 对象。

art3d.rotate_axes(xs, ys, zs, zdir)

重新排序坐标,使轴与 zdir 一起沿原始 z 轴旋转。

art3d.text_2d_to_3d(obj[, z, zdir])

将文本转换为 Text3D 对象。

proj3d#

proj3d.inv_transform(xs, ys, zs, M)

proj3d.persp_transformation(zfront, zback, ...)

proj3d.proj_points(点,米)

proj3d.proj_trans_points(点,米)

proj3d.proj_transform(xs, ys, zs, M)

通过投影矩阵变换点

proj3d.proj_transform_clip(xs, ys, zs, M)

通过投影矩阵对点进行变换并返回裁剪结果返回txs、tys、tzs、tis

proj3d.rot_x(V,阿尔法)

proj3d.transform(xs, ys, zs, M)

通过投影矩阵变换点

proj3d.view_transformation(E、R、V、滚动)

proj3d.world_transformation(xmin, xmax, ...)

生成一个矩阵,将指定范围内的齐次坐标缩放到 [0, 1] 或 [0, pb_aspect[i]] 如果指定了 plotbox 纵横比。