摘要: Matplotlib 画 3D 图的例子、曲线和曲面
【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】
我的网站:潮汐朝夕的生活实验室
我的公众号:潮汐朝夕
我的知乎:潮汐朝夕
我的github:FennelDumplings
我的leetcode:FennelDumplings
本文我们总结一下在 Matplotlib 中画平面曲线、空间曲线、空间曲面的方法。
在 Matplotlib 中调用 add_subplot
创建 axes 时,设置 projection="3d"
之后可以进行 3D 绘图。
平面曲线
参数方程
画出以下参数方程表示的平面曲线:
L:{x=2(θ−sinθ)y=2(1−cosθ)画图方法:plot
这个是折线图,不连续的曲线不适用。
1 | import matplotlib.pyplot as plt |
画图方法:scatter
1 | import matplotlib.pyplot as plt |
隐函数
画出以下隐函数表示的平面曲线:
F(x,y)=(x2+y2−1)3−x2y3=0画图方法:contour
1 | import matplotlib.pyplot as plt |
空间曲线
参数方程
画出以下参数方程表示的空间曲线:
Γ:{x=sinty=t2z=t画图方法:plot3D
这个是折线图,不连续的曲线不适用。
1 | import matplotlib.pyplot as plt |
画图方法:scatter3D
1 | import matplotlib.pyplot as plt |
空间曲面
参数方程
画出以下参数方程表示的表示的曲面:
Σ:{x=uy=vz=√u2+v2画图方法:contour3D
1 | import matplotlib.pyplot as plt |
画图方法:scatter3D
1 | import matplotlib.pyplot as plt |
隐函数
画出以下隐函数表示的空间曲面:
(x2+94y2+z2−1)2−x2z3−980y2z3=0隐函数表示的曲面,在 Matplotlib 中不是很好画,对于具体的隐函数,建议想办法转为参数方程。
二元函数形式
画出以下二元函数表示的曲面:
z=2(1−x4+x5+y4)e−x2−y2画图方法:plot_surface
/plot_wireframe
以曲面形式显示高度方向的值,可以映射颜色,用颜色显示高度的值。用 plot_surface()
方法绘制,格式如下:
1 | plot_surface(X, Y, Z, *args, norm=None, vmin=None, vmax=None, lightsource=None, **kwargs) |
另外可以用 plot_wireframe()
方法绘制不带颜色的线架图,与 plot_surface()
用法相同。
1 | import numpy as np |