本文实例讲述了Python实现的多项式拟合功能。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# -*- coding: utf-8 -*- #! python2 import numpy as np import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams[ 'font.sans-serif' ] = [ 'SimHei' ] # 指定默认字体 plt.rcParams[ 'axes.unicode_minus' ] = False #解决负数坐标显示问题 #x的个数决定了样本量 x = np.arange( - 1 , 1 , 0.02 ) #y为理想函数 y = 2 * np.sin(x * 2.3 ) + 0.5 * x * * 3 #y1为离散的拟合数据 y1 = y + 0.5 * (np.random.rand( len (x)) - 0.5 ) z1 = np.polyfit(x, y, 6 ) # 生成多项式对象 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' 拟合数据') plt.plot(x,pp1,color = 'b' ,linestyle = '-' ,marker = '.' ,label = u "拟合曲线" ) # 把拟合的曲线在这里画出来 plt.legend(loc = 'upper left' ) plt.show() |
运行效果:
注意:不同于之前《Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法》上介绍的中文显示方法,这里使用:
1
2
|
from pylab import mpl mpl.rcParams[ 'font.sans-serif' ] = [ 'SimHei' ] # 指定默认字体 |
来进行全局的中文显示设置
另外,使用:
1
|
plt.rcParams[ 'axes.unicode_minus' ] = False |
来进行负数坐标的显示设置
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/luoganttcc/article/details/78887285