最近看数学,发现有时候画个图还真管用,对理解和展示效果都不错。尤其是三维空间和一些复杂函数,相当直观,也有助于解题。
本来想用mathlab,下载安装都太费事,杀鸡不用牛刀,Python基本就能实现,三维图还可以拖动图像来回旋转。
下面分别在二维三维举例说明。
1) 描述:
绘制极坐标系中r=1他r=2cosθ的相交部分
(没画的时候,我确实没看出r=2cosθ也是正圆)
2) 程序
3) 运行结果
plot 第一个参数是极坐标角度,第二个参数是半径
import matplotlib.pyplot as plt import numpy as np fig = plt.figure() ax = fig.add_axes([0.0, 0.0, .6, .6], polar=True) t = np.linspace(0, 2 * np.pi, 100) ax.plot(t*4, t, color='blue', lw=3) plt.show()
同心圆和螺旋,角度变化快,半径变化慢,则螺旋密度高
如果半径值固定,那就是圆,否则,就是螺旋
第一个参数是角度,第二个参数是半径
import numpy as np import matplotlib.pyplot as plt theta = np.arange(0, 2*np.pi, 0.02) plt.subplot(121, polar=True) plt.plot(theta, 1.6*np.ones_like(theta), linewidth=2) #绘制同心圆 plt.plot(theta, 2*np.ones_like(theta), linewidth=2) #绘制同心圆 plt.plot(theta, theta/3, "--", linewidth=2)
1) 描述:
绘制向量函数r(t)=(sint,cost,t)的图,即向量r的坐标x,y,z都是t的函数,分别是x(t)=sint, y(t)=cost, z(t)=t。可将函数视为“大黄蜂”的飞行曲线,即t时刻,它在空间中的位置是(x,y,z),以及它的导数(飞行速度)x’(t)=cost, y’(t)=-sint,z=1,即r’(t)=(cost,-sint,1)
2) 程序
3) 运行结果
1) 描述
画曲面 z = x^2 +y^2
2) 程序