注解
Click here 下载完整的示例代码
mplot3d工具包¶
使用mplot3d工具包生成三维绘图。
入门¶
3D轴(类 Axes3D
)通过传递 projection="3d"
关键字参数 Figure.add_subplot
::
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
在 1.0.0 版更改: 在Matplotlib 1.0.0之前, Axes3D
需要直接用 from mpl_toolkits.mplot3d import Axes3D; ax = Axes3D(fig)
.
在 3.2.0 版更改: 在Matplotlib 3.2.0之前,需要显式地导入 mpl_toolkits.mplot3d
要对其进行“3d”投影的模块 Figure.add_subplot
.
见 MPLOT3D FAQ 有关mplot3d工具包的更多信息。
线图¶
-
Axes3D.
plot
(xs, ys, *args, zdir='z', **kwargs)[源代码]¶ 绘制二维或三维数据。
参数: - xs一维阵列状
顶点的x坐标。
- ys一维阵列状
顶点的y坐标。
- zs浮点数或一维数组
顶点的z坐标;一个用于所有点或一个用于每个点。
- zdir{x',y',z},默认值:“z”
打印二维数据时,使用的方向为z('x'、'y'或'z')。
- **kwargs
其他参数转发到
matplotlib.axes.Axes.plot
.
散点图¶
-
Axes3D.
scatter
(xs, ys, zs=0, zdir='z', s=20, c=None, depthshade=True, *args, **kwargs)[源代码]¶ 创建散点图。
参数: - XS,YS类数组
数据位置。
- zs浮点或类似数组的,默认值:0
Z位置。数组的长度与 xs 和 ys 或单个值将所有点放置在同一平面中。
- zdir{'x','y','z','x','y','z'},默认值:'z'
的轴方向 zs . 在三维轴上绘制二维数据时,这很有用。数据必须作为 xs , ys . 设置 zdir 到“y”,然后将数据绘制到x-z平面。
也见 在三维图上绘制二维数据 .
- s浮点或类似数组,默认值:20
以点为单位的标记大小 **2. Either an array of the same length as * XS 和 或单个值,使所有标记的大小相同。
- c颜色、顺序或颜色序列,可选
标记颜色。可能值:
- 单一颜色格式字符串。
- 长度为n的一系列颜色。
- 要映射到颜色的n个数字序列,使用 cmap 和 norm .
- 一种二维数组,其中的行是rgb或rgb a。
有关更多详细信息,请参阅 c 的参数
scatter
.- depthshadebool,默认值:True
是否对散布标记进行着色以显示深度的外观。每次呼叫
scatter()
将独立执行其深度着色。- **kwargs
所有其他参数都传递给
scatter
.
返回:
线框图¶
-
Axes3D.
plot_wireframe
(X, Y, Z, *args, **kwargs)[源代码]¶ 绘制三维线框。
注解
这个 计数 和 计数 Kwargs(默认值均为50)确定每个方向上使用的最大样本数。如果输入数据更大,它将被(通过切片)降到这些点数。
参数: - x,y,z二维数组
数据值。
- 计数利息
每个方向上使用的最大样本数。如果输入数据更大,它将被(通过切片)降到这些点数。将计数设置为零将导致数据不在相应方向上采样,从而生成三维线图而不是线框图。默认值为50。
2.0 新版功能.
- CStride,CStride公司利息
在每个方向上降低采样幅度。这些论点与 计数 和 计数 . 如果只有一个 拉斯特里 或 卡斯特里 设置,其他默认值为1。将步幅设置为零会导致数据不按相应方向采样,从而生成三维线图而不是线框图。
“经典”模式使用默认值
rstride = cstride = 1
而不是新的默认rcount = ccount = 50
.- **kwargs
其他参数转发到
Line3DCollection
.
曲面图¶
-
Axes3D.
plot_surface
(X, Y, Z, *args, norm=None, vmin=None, vmax=None, lightsource=None, **kwargs)[源代码]¶ 创建曲面图。
默认情况下,它将以纯色的阴影着色,但它也支持通过提供 cmap 参数。
注解
这个 计数 和 计数 Kwargs(默认值均为50)确定每个方向上使用的最大样本数。如果输入数据更大,它将被(通过切片)降到这些点数。
注解
要最大化渲染速度,请考虑设置 拉斯特里 和 卡斯特里 行数减1和列数减1的除数。例如,给定51行,rstride可以是50的任何除数。
类似地,设置 拉斯特里 和 卡斯特里 等于1(或 计数 和 计数 等于行数和列数)可以使用优化的路径。
参数: - x,y,z二维数组
数据值。
- 计数利息
每个方向上使用的最大样本数。如果输入数据更大,它将被(通过切片)降到这些点数。默认值为50。
2.0 新版功能.
- CStride,CStride公司利息
在每个方向上降低采样幅度。这些论点与 计数 和 计数 . 如果只有一个 拉斯特里 或 卡斯特里 设置,其他默认值为10。
“经典”模式使用默认值
rstride = cstride = 10
而不是新的默认rcount = ccount = 50
.- color颜色像
表面补片的颜色。
- cmap色图
表面补丁的颜色图。
- facecolors像数组一样的颜色。
每个补丁的颜色。
- norm归一化
颜色映射的规范化。
- VMN,Vmax浮动
标准化的界限。
- shadebool,默认值:True
是否给脸着色。当 cmap 指定。
- 光源 :
LightSource
LightSource
使用的光源 阴影 是True。
- **kwargs
其他参数转发到
Poly3DCollection
.
三面图¶
-
Axes3D.
plot_trisurf
(*args, color=None, norm=None, vmin=None, vmax=None, lightsource=None, **kwargs)[源代码]¶ 绘制三角形曲面。
(可选)三角测量可以用以下两种方法之一指定:
plot_trisurf(triangulation, ...)
三角测量是
Triangulation
对象,或::plot_trisurf(X, Y, ...) plot_trisurf(X, Y, triangles, ...) plot_trisurf(X, Y, triangles=triangles, ...)
在这种情况下,将创建一个三角测量对象。见
Triangulation
为了解释这些可能性。其余参数为:
plot_trisurf(..., Z)
在哪里? Z 是要轮廓的值数组,在三角测量中每个点一个。
参数: - x,y,z类数组
数据值作为1D数组。
- color
表面补片的颜色。
- cmap
表面补丁的颜色图。
- norm归一化
将值映射到颜色的Normalize实例。
- VMN,Vmax浮点,默认值:无
要映射的最小值和最大值。
- shadebool,默认值:True
是否给脸着色。当 cmap 指定。
- 光源 :
LightSource
LightSource
使用的光源 阴影 是True。
- **kwargs
所有其他参数都传递给
Poly3DCollection
实例
(Source code _, png , pdf )
(Source code _, png , pdf )
1.2.0 新版功能.
等高线图¶
-
Axes3D.
contour
(X, Y, Z, *args, extend3d=False, stride=5, zdir='z', offset=None, **kwargs)[源代码]¶ 创建三维轮廓图。
参数: - x,y,z类数组
输入数据。
- extend3dbool,默认值:False
是否在三维中延伸轮廓。
- stride利息
延伸轮廓的步长。
- zdir{x',y',z},默认值:“z”
使用说明。
- offset可选浮动
如果指定,在垂直于zdir的平面上绘制此位置等高线的投影。
- *args, ** 夸克
其他参数转发到
matplotlib.axes.Axes.contour
.
返回: - matplotlib.contour.QuadContourSet
填充轮廓图¶
-
Axes3D.
contourf
(X, Y, Z, *args, zdir='z', offset=None, **kwargs)[源代码]¶ 创建三维填充等高线图。
参数: - x,y,z类数组
输入数据。
- zdir{x',y',z},默认值:“z”
使用说明。
- offset可选浮动
如果指定,在垂直于zdir的平面上绘制此位置等高线的投影。
- *args, ** 夸克
其他参数转发到
matplotlib.axes.Axes.contourf
.
返回: - matplotlib.contour.QuadContourSet
笔记
1.1.0 新版功能: 这个 zdir 和 抵消 参数。
1.1.0 新版功能: 第二个Contourf3d示例中演示的功能由于1.1.0版的错误修复而启用。
多边形图¶
条形图¶
-
Axes3D.
bar
(left, height, zs=0, zdir='z', *args, **kwargs)[源代码]¶ 添加2D条(S)。
参数: - left一维阵列状
条左侧的X坐标。
- height一维阵列状
栏杆的高度。
- zs浮点数或一维数组
钢筋的Z坐标;如果指定单个值,则将对所有钢筋使用该值。
- zdir{x',y',z},默认值:“z”
打印二维数据时,使用的方向为z('x'、'y'或'z')。
- **kwargs
其他参数转发到
matplotlib.axes.Axes.bar
.
返回: - mpl_toolkits.mplot3d.art3d.Patch3DCollection
颤抖¶
-
Axes3D.
quiver
(X, Y, Z, U, V, W, /, length=1, arrow_length_ratio=.3, pivot='tail', normalize=False, **kwargs)[源代码]¶ 绘制箭头的三维区域。
参数可以是数组或标量,只要它们可以一起广播。参数也可以是屏蔽数组。如果任何参数中的元素被屏蔽,则不会绘制相应的quiver元素。
参数: - x,y,z类数组
箭头位置的X、Y和Z坐标(默认为箭头的尾部;请参见 枢轴 夸克)。
- U、 V、W类数组
箭头向量的x、y和z分量。
- length浮点,默认值:1
每个箭袋的长度。
- arrow_length_ratio浮点,默认值:0.3
箭头与箭袋的比率。
- pivot{'tail','middle','tip'},默认值:'tail'
位于网格点的箭头部分;箭头围绕该点旋转,因此命名为 枢轴 .
- normalizebool,默认值:False
是否将所有箭头规格化为具有相同的长度,或保留由定义的长度 u , v 和 w .
- **kwargs
任何其他关键字参数都委托给
LineCollection
三维2D图¶
文本¶
分绘¶
在一个图形中有多个三维图形与在二维图形中相同。此外,您可以在同一个图形中同时使用二维和三维绘图。
1.0.0 新版功能: 在v1.0.0中添加了子绘图3D绘图。早期版本不能这样做。
关键词:matplotlib代码示例,codex,python plot,pyplot Gallery generated by Sphinx-Gallery