Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】


Posted in Python onJuly 12, 2018

本文实例讲述了Python实现曲线拟合操作。分享给大家供大家参考,具体如下:

这两天学习了用python来拟合曲线。

一、环境配置

本人比较比较懒,所以下载的全部是exe文件来安装,安装按照顺利来安装。自动会找到python的安装路径,一直点下一步就行。还有其他的两种安装方式:一种是解压,一种是pip。我没有尝试,就不乱说八道了。

没有ArcGIS 环境的,可以不看下面这段话了。

在配置环境时遇见一个小波折,就是原先电脑装过ArcGIS10.2 ,所以其会默认安装python2.7,而且python是32位的。且其目录为C:\Python27\ArcGIS10.2,所以引用环境变量时,要注意。并且在其引用的工具包中本身包含numpy,matplotlib的包。还是很方便的。但是因为之前想用PyQT来做曲线拟合的界面,安装QT时总是失败,所以最后放弃使用这个。在安装新的python时注意要把路径写到上面这个路径前面,意思就是说在安装上面的包的时候会找默认python路径。我新安装python路径为C:\Python2,要不然就会找到ArcGIS那个python包路径下了。

1. 安装包

python2.7 (32位)https://www.python.org/downloads/
numpy-1.8.1-win32-superpack-python2.7
scipy-0.15.1-win32-superpack-python2.7
matplotlib-1.3.1.win32-py2.7

安装过程中遇见的问题

提示

numpy是Python的一种开源的数值计算扩展,数学计算很方便。
scipy是一款方便、易于使用、专为科学和工程设计的Python工具包.它包括统计,优化,整合,线性代数模块,傅里叶变换,信号和图像处理,常微分方程求解器等等.这次还没用到,看介绍很强大,是numpy的升级版。

matplotlib是Python的一种开源的扩展可以绘制各种各种的图表。

二、实例

曲线拟合的例子

import matplotlib.pyplot as plt
import math
import numpy as np
import random
import csv
plt.rcParams['font.sans-serif'] = ['SimHei']#设置显示中文
fig = plt.figure()
ax = fig.add_subplot(111)#将画布分割成1行1列,图像画在从左到右从上到下的第1块
#阶数为6阶
order=6
#生成曲线上的各个点
dataMat = np.loadtxt(open("c:\\yandu.csv","rb"),delimiter=",",skiprows=0)
size=dataMat.shape
num=size[0]
trandata=np.transpose(dataMat)#矩阵转置
xa=trandata[0]#得到天数数组(横坐标)
ya=trandata[1]#实测盐度值数组
#数据筛选,去除盐度值为零的,提高拟合精度
i=0
x=[]
y=[]
for yy in ya:
  if yy>0:
    xx=xa[i]
    i+=1
    x.append(xx)
    y.append(yy)
#绘制原始数据
ax.plot(x,y,label=u'原始数据',color='m',linestyle='',marker='.')
#计算多项式
c=np.polyfit(x,y,order)#拟合多项式的系数存储在数组c中
yy=np.polyval(c,x)#根据多项式求函数值
#进行曲线绘制
x_new=np.linspace(0, 365, 2000)
f_liner=np.polyval(c,x_new)
#ax.plot(x,y,color='m',linestyle='',marker='.')
ax.plot(x_new,f_liner,label=u'拟合多项式曲线',color='g',linestyle='-',marker='')
# labels标签设置
ax.set_xlim(0, 366)
ax.set_xlabel(u'天')
ax.set_ylabel(u'盐度')
ax.set_title(u'盐度的日变化', bbox={'facecolor':'0.8', 'pad':5})
ax.legend()
plt.show()

运行结果:

Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】

Python 相关文章推荐
Python中使用gzip模块压缩文件的简单教程
Apr 08 Python
用Python程序抓取网页的HTML信息的一个小实例
May 02 Python
python 遍历字符串(含汉字)实例详解
Apr 04 Python
Python实现字符串格式化输出的方法详解
Sep 20 Python
python使用PyCharm进行远程开发和调试
Nov 02 Python
使用Python爬了4400条淘宝商品数据,竟发现了这些“潜规则”
Mar 23 Python
Python:Numpy 求平均向量的实例
Jun 29 Python
PyQt Qt Designer工具的布局管理详解
Aug 07 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
Jan 16 Python
如何基于python实现归一化处理
Jan 20 Python
基于python的docx模块处理word和WPS的docx格式文件方式
Feb 13 Python
Python如何合并多个字典或映射
Jul 24 Python
python跳过第一行快速读取文件内容的实例
Jul 12 #Python
python 读取文本文件的行数据,文件.splitlines()的方法
Jul 12 #Python
Python实现的简单读写csv文件操作示例
Jul 12 #Python
用Python分析3天破10亿的《我不是药神》到底神在哪?
Jul 12 #Python
python之文件读取一行一行的方法
Jul 12 #Python
python 读取文件并替换字段的实例
Jul 12 #Python
python logging重复记录日志问题的解决方法
Jul 12 #Python
You might like
世界咖啡生产者论坛呼吁:需要立即就咖啡价格采取认真行动
2021/03/06 咖啡文化
jQuery+php实现ajax文件即时上传的详解
2013/06/17 PHP
php实现扫描二维码根据浏览器类型访问不同下载地址
2014/10/15 PHP
yii实现图片上传及缩略图生成的方法
2014/12/04 PHP
使用jquery为table动态添加行的实现代码
2011/03/30 Javascript
表单JS弹出填写提示效果代码
2011/04/16 Javascript
node.js chat程序如何实现Ajax long-polling长链接刷新模式
2012/03/13 Javascript
JavaScript 高级篇之DOM文档,简单封装及调用、动态添加、删除样式(六)
2012/04/07 Javascript
js跳转页面方法总结
2014/01/29 Javascript
捕获和分析JavaScript Error的方法
2014/03/25 Javascript
jquery实现具有嵌套功能的选项卡
2016/02/12 Javascript
BootStrap中按钮点击后被禁用按钮的最佳实现方法
2016/09/23 Javascript
JS实现touch 点击滑动轮播实例代码
2017/01/19 Javascript
Nodejs中使用captchapng模块生成图片验证码
2017/05/18 NodeJs
基于Vue的ajax公共方法(详解)
2018/01/20 Javascript
Vue2.0中集成UEditor富文本编辑器的方法
2018/03/03 Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
2019/11/05 Javascript
jQuery实现容器间的元素拖拽功能
2020/12/01 jQuery
[52:31]VP vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python连接mysql数据库的正确姿势
2016/02/03 Python
Python有序查找算法之二分法实例分析
2017/12/11 Python
tensorflow中next_batch的具体使用
2018/02/02 Python
Python3 replace()函数使用方法
2018/03/19 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
自学python用什么系统好
2020/06/23 Python
python实现AHP算法的方法实例(层次分析法)
2020/09/09 Python
Canvas与Image互相转换示例代码
2013/08/09 HTML / CSS
奥地利体育网上商店:Gigasport
2019/10/09 全球购物
西铁城美国官方网站:Citizen Watch美国
2019/11/08 全球购物
先进集体获奖感言
2014/02/13 职场文书
工商治理实习生的自我评价分享
2014/02/20 职场文书
五四青年节演讲稿
2014/05/26 职场文书
人大调研汇报材料
2014/08/14 职场文书
个人总结与自我评价2015
2015/03/11 职场文书
机械原理课程设计心得体会
2016/01/15 职场文书
python中sys模块的介绍与实例
2021/04/17 Python