我們利用python的sympy模塊能夠很方便的進行科學計算,可以利用它對變量表達式進行泰勒展開并繪制圖像,下面是我對sin(x)進行麥克勞林展開并繪制圖像
from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
from sympy import * #用于求導積分等科學計算
from sympy.plotting import plot3d
from sympy.functions import exp
x = Symbol('x')#x 變量
print(help(plot))#對x = 0點泰勒展開 至x20次方無窮小
p0 = plot(sin(x),(x,-2*pi,2*pi),line_color='b',ylim=(-1.5,1.5),title='funion',show=False)
#畫出sin(x),范圍-2*pi,2*pi,藍色線,y刻度范圍-1.5,1.5,暫不顯示
exper1 = series(sin(x),x,n=4)#泰勒展開至第O(x**4)
p1 = plot(exper1.subs(O(x**4),0),(x,-2*pi,2*pi),line_color='br',title='O(x**4)',show=False)
#第O(x**4)項用0替代 顏色為藍紅色
exper2 = series(sin(x),x,n=6)#泰勒展開至第O(x**6)
p2 = plot(exper2.subs(O(x**6),0),(x,-2*pi,2*pi),line_color='g',title='O(x**6)',show=False)
#第O(x**6)項用0替代 顏色為綠
exper3 = series(sin(x),x,n=8)#泰勒展開至第O(x**8)
p3 = plot(exper3.subs(O(x**8),0),(x,-2*pi,2*pi),line_color='r',title='O(x**8)',show=False)
#第O(x**8)項用0替代 顏色為紅
exper4 = series(sin(x),x,n=10)#泰勒展開至第O(x**10)
p4 = plot(exper4.subs(O(x**10),0),(x,-2*pi,2*pi),line_color='y',title='O(x**10)',show=False)
#第O(x**10)項用0替代 顏色為黃
p0.extend(p1)
p0.extend(p2)
p0.extend(p3)
p0.extend(p4)
p0.show()#顯示圖像

可以看到,隨著展開的項數越多,展開后的圖形就越接近藍線sin(x)?,黃線是展開至O(x**10)無窮小項的圖像
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
