您好,登錄后才能下訂單哦!
本篇文章為大家展示了 Python中怎么繪制各種曲線,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
Python 代碼如下:
import numpy as np import matplotlib.pyplot as plt X = np.linspace(-4, 4, 1024) Y = .25 * (X + 4.) * (X + 1.) * (X - 2.) plt.title('$f(x)=\\frac{1}{4}(x+4)(x+1)(x-2)$') plt.plot(X, Y, c = 'g') plt.show()
通過numpy的linspace方法來確定橫坐標x的取值范圍,列出方程,然后調用matplotlib的pyplot畫出函數曲線即可。numpy 是一個用python實現的科學計算包,包括一個強大的N維數組對象Array和成熟的函數庫,有用于整合C/C++和Fortran代碼的工具包,提供了實用的線性代數、傅里葉變換和隨機數生成函數等工具,可以理解成Matlab。
哪些看似抽象的數學公式,實際上是自己不知道她們的應用場景而已。
Python代碼如下:
import numpy as np import matplotlib.pyplot as plt X = np.linspace(0, 2 * np.pi, 100) YSinValues = np.sin(X) YCosValues = np.cos(X) plt.plot(X, YSinValues) plt.plot(X, YCosValues) plt.show()
Matplotlib 是一個 Python 的 2D繪圖庫,甚至可以生成出版質量級別的圖形。
對于那些正態分布而言,Python 畫起來也就相當簡單了:
import numpy as np import matplotlib.pyplot as plt def pdf(X, mu, sigma): a = 1. / (sigma * np.sqrt(2. * np.pi)) b = -1. / (2. * sigma ** 2) return a * np.exp(b * (X - mu) ** 2) X = np.linspace(-6, 6, 1000) for i in range(3): samples = np.random.standard_normal(10) mu, sigma = np.mean(samples), np.std(samples) plt.plot(X, pdf(X, mu, sigma), color = '.66') plt.plot(X, pdf(X, 0., 1.), color = 'b') plt.show()
為了不顯得單調,這里多畫了幾條曲線。只要算出方差和均值,從excel中讀出哪些數值就可以擬合正態分布了。
在直角坐標系中,愛心線的方程的python 表達為:x** 2+ y** 2 + a * x= a * sqrt(x** 2+y** 2) 和 x** 2+ y** 2 - a * x= a * sqrt(x** 2+y** 2)通過x 來求對應的y值很麻煩,就像軟件設計中的“萬能層”那樣,可以采用參數方程來表示:
x=a*(2*cos(t)-cos(2*t))
y=a*(2*sin(t)-sin(2*t))
具體的Python代碼如下:
import numpy as np import matplotlib.pyplot as plt a = 1 t = np.linspace(0 , 2 * np.pi, 1024) X = a*(2*np.cos(t)-np.cos(2*t)) Y = a*(2*np.sin(t)-np.sin(2*t)) plt.plot(Y, X,color='r') plt.show()
代表愛心的心形線來了:
但這不是六行代碼呀?也不是r=a(1-sinθ)呀?的確如此,那是極坐標系,python 的matplotlib同樣支持極坐標系的,愛心線的六行pyton代碼如下:
這樣,得到如下圖像:
心形線確實是愛心滿滿,如果融入了憂傷會是怎樣呢?
這樣就得到了另一個愛心線:
上述內容就是 Python中怎么繪制各種曲線,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。