本文實(shí)例講述了Python實(shí)現(xiàn)的多項(xiàng)式擬合功能。分享給大家供大家參考,具體如下:
# -*- coding: utf-8 -*-#! python2import numpy as np import matplotlib.pyplot as plt from pylab import mplmpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默認(rèn)字體plt.rcParams['axes.unicode_minus']=False #解決負(fù)數(shù)坐標(biāo)顯示問題 #x的個(gè)數(shù)決定了樣本量x = np.arange(-1,1,0.02) #y為理想函數(shù) y = 2*np.sin(x*2.3)+0.5*x**3#y1為離散的擬合數(shù)據(jù)y1 = y+0.5*(np.random.rand(len(x))-0.5)z1 = np.polyfit(x, y, 6)# 生成多項(xiàng)式對象p1 = np.poly1d(z1)pp1=p1(x)###################################plt.plot(x,y,color='g',linestyle='-',marker='',label=u'理想曲線') plt.plot(x,y1,color='m',linestyle='',marker='o',label=u'擬合數(shù)據(jù)')plt.plot(x,pp1,color='b',linestyle='-',marker='.',label=u"擬合曲線") # 把擬合的曲線在這里畫出來plt.legend(loc='upper left')plt.show()
運(yùn)行效果:
注意:不同于之前《Python使用Matplotlib模塊時(shí)坐標(biāo)軸標(biāo)題中文及各種特殊符號顯示方法》上介紹的中文顯示方法,這里使用:
from pylab import mplmpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默認(rèn)字體
來進(jìn)行全局的中文顯示設(shè)置
另外,使用:
plt.rcParams['axes.unicode_minus']=False
來進(jìn)行負(fù)數(shù)坐標(biāo)的顯示設(shè)置
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選