强大的Python | 您所在的位置:网站首页 › Python双曲线代码 › 强大的Python |
强大的Python-使用NumPy和Matplotlib绘制数学(双纽线,阿基米德螺线,心形线)
NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用, 这种组合广泛用于替代 MatLab,是一个强大的科学计算环境,有助于我们通过 Python 学习数据科学或者机器学习。 首先使用pip下载numpy和matplotlib 双纽线import numpy as np import matplotlib.pyplot as plt alpha = 1 #numpy.linspace 函数用于创建一个一维数组,数组是一个等差数列构成的,格式如下: #np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) #start 序列的起始值 #stop 序列的终止值,如果endpoint为true,该值包含于数列中 #num 要生成的等步长的样本数量,默认为50 #endpoint 该值为 ture 时,数列中中包含stop值,反之不包含,默认是True。 #retstep 如果为 True 时,生成的数组中会显示间距,反之不显示。 #dtype ndarray 的数据类型 theta = np.linspace(0,2*np.pi,num=500) x = alpha * np.sqrt(2) * np.cos(theta) / (np.sin(theta)**2+1) y = alpha * np.sqrt(2) * np.cos(theta) * np.sin(theta)/(np.sin(theta)**2+1) plt.title(r"$\rho^{2}=a^{2}\cos 2\theta\quad a=1$") plt.plot(x,y) plt.grid() plt.show() 阿基米德螺线import numpy as np #阿基米德螺线 import matplotlib.pyplot as plt #Numpy 中 arange() 主要是用于生成数组 具体用法如下: #numpy.arange(start stop step dtype = None) #start 开始位置 数字,可选项 默认起始值为0 #stop 停止位置 数字 #step 步长 数字 可选项 默认步长为1 如果指定了step 则还必须给出start #dtype 输出数组的类型 如果未给出dtype 则从其他输入参数推断数据类型 t = np.arange(-3*np.pi,3*np.pi,0.01) x = t*np.cos(t) y = t*np.sin(t) plt.title(r"$\rho=a\theta\quad a=1$") plt.plot(x,y) plt.show() plt.plot(x,y) plt.grid() plt.show() 心形线r=a(1-sinθ) import matplotlib.pyplot as plt #心形线 import numpy as np t = np.arange(0, 2*np.pi,0.01) x = 20 * np.sin(t) **3 y = 13 * np.cos(t) - 5 * np.cos(2*t) - 2 * np.cos(3*t) - np.cos(4*t) plt.plot(x,y) plt.grid() plt.show() |
CopyRight 2018-2019 实验室设备网 版权所有 |