python散点图拟合曲线如何求拟合_python散点图最佳拟合直线的代码
你可以用numpy的polyfit。我使用以下(您可以安全地删除关于确定系数和误差界限的位,我只是认为它看起来不错):#!/usr/bin/python3
import numpy as np
import matplotlib.pyplot as plt
import csv
with open("example.csv", "r") as f:
data = [row for row in csv.reader(f)]
xd = [float(row[0]) for row in data]
yd = [float(row[1]) for row in data]
# sort the data
reorder = sorted(range(len(xd)), key = lambda ii: xd[ii])
xd = [xd[ii] for ii in reorder]
yd = [yd[ii] for ii in reorder]
# make the scatter plot
plt.scatter(xd, yd, s=30, alpha=0.15, marker='o')
# determine best fit line
par = np.polyfit(xd, yd, 1, full=True)
slope=par[0][0]
intercept=par[0][1]
xl = [min(xd), max(xd)]
yl = [slope*xx + intercept for xx in xl]
# coefficient of determination, plot text
variance = np.var(yd)
residuals = np.var([(slope*xx + intercept - yy) for xx,yy in zip(xd,yd)])
Rsqr = np.round(1-residuals/variance, decimals=2)
plt.text(.9*max(xd)+.1*min(xd),.9*max(yd)+.1*min(yd),'$R^2 = %0.2f$'% Rsqr, fontsize=30)
plt.xlabel("X Description")
plt.ylabel("Y Description")
# error bounds
yerr = [abs(slope*xx + intercept - yy) for xx,yy in zip(xd,yd)]
par = np.polyfit(xd, yerr, 2, full=True)
yerrUpper = [(xx*slope+intercept)+(par[0][0]*xx**2 + par[0][1]*xx + par[0][2]) for xx,yy in zip(xd,yd)]
yerrLower = [(xx*slope+intercept)-(par[0][0]*xx**2 + par[0][1]*xx + par[0][2]) for xx,yy in zip(xd,yd)]
plt.plot(xl, yl, '-r')
plt.plot(xd, yerrLower, '--r')
plt.plot(xd, yerrUpper, '--r')
plt.show()
python散点图拟合曲线如何求拟合_python散点图最佳拟合直线的代码相关推荐
- python散点图拟合曲线如何求拟合_python 拟合曲线并求参
原博文 2019-06-02 14:35 − 需要对数据进行函数拟合,首先画一下二维散点图,目测一下大概的分布, 所谓正态分布,就是高斯分布,正态曲线是一种特殊的高斯曲线. python的scipy. ...
- python输入两个数求差_python差值_python差值法_python求差值 - 云+社区 - 腾讯云
广告关闭 回望2020,你在技术之路上,有什么收获和成长么?对于未来,你有什么期待么?云+社区年度征文,各种定制好礼等你! 环境依赖api 网关提供 python 2.7 和 python 3 两个版 ...
- python输入n个数求平均值_Python 实现输入任意多个数,并计算其平均值的例子
Python 实现输入任意多个数,并计算其平均值的例子 发布时间:2020-09-03 03:16:35 来源:脚本之家 阅读:76 学习了Python相关数据类型,函数的知识后,利用字符串的分割实现 ...
- python 散点图点击链接图片_Python散点图。 标记的大小和样式
我有一组要显示为散点图的数据. 我希望将每个点绘制为大小dx的正方形. 1 2 3 4 5 6x = [0.5,0.1,0.3] y = [0.2,0.7,0.8] z = [10.,15.,12.] ...
- origin中文版散点图拟合曲线_Origin绘图:3D散点图如何绘制拟合线、如何给数据图“化妆”...
您潜心做科学实验!我潜心绘制曲线!您可以将文献中的"帅图"发给"编辑之谭",谭编辑重现其绘制过程.今天谭编辑为数据图"拟合"和"化 ...
- python二元多次函数拟合_Python实现的拟合二元一次函数功能示例【基于scipy模块】...
本文实例讲述了Python实现的拟合二元一次函数功能.分享给大家供大家参考,具体如下: 背景: 使用scipy拟合一元二次函数. 参考: HYRY Studio-<用Python做科学计算> ...
- Python知道cos值求角度_Python——画一棵漂亮的樱花树
最近用Python(大多是turtle库)绘制的樱花树有点火,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 (一) 动态生成樱花 效 ...
- python文字游戏源代码求年纪_Python实现猜年龄游戏代码实例
1. 在猜年龄的基础上编写登录.注册方法,并且把猜年龄游戏分函数处理,如 2. 登录函数 3. 注册函数 4. 猜年龄函数 5. 选择奖品函数 代码如下 import json real_age = ...
- python中if语句求最大值_python 判断三个数字中的最大值实例代码
python 判断三个数字中的最大值,具体代码如下所示: #判断三个数中最大值 n1= int(input('please enter the firest number:')) n2 = int(i ...
最新文章
- ❤️手撕这十道HiveSQL题还不能吊打面试官,却能保你不被吊打❤️【推荐收藏】
- 如何用LSTM自编码器进行极端事件预测?(含Python代码)
- java多线程-sleep()和wait()对比
- 九大排序算法,你会几个?
- WCF项目的架构设计
- linux之hexdump命令
- Java消息服务~消息属性
- 控件:DataGridView列类型
- android webview 像素,Android:在WebView中加载的图像中的像素质量降低
- linux软连接目标不存在,Linux ln创建软连接之后无法使用,无法whereis
- 接口(Interface)的作用
- java前后端分离(增删查改)
- 计算模型的GFLOPs和参数量 举例VGG16和DETR
- 邢帅——一个逆袭的草根
- vue请求拦截 给所有的api接口的请求 params 带上一个存储的值及qs的安装
- Win11-GTX3060-配置Pytorch GPU
- 计算机应用基础2011,2011统计师计算机应用基础:计算机概述
- 多年锤炼,迈向Kata 3.0 !走进开箱即用的安全容器体验之旅
- centos 命令行模式切换桌面化
- 项目部署常用linux命令(丰富的教程、资源)
热门文章
- 文件进行右键后 删除 “使用金山毒霸进行扫描”选项。
- java如何对不齐_[转帖]解决Jbuilder光标对不齐的问题
- 如何判断网页是动静态的
- 树莓派--街机网址链接
- Cesium已知经纬度获取其高度
- 洛谷 P7453 [THUSCH2017] 大魔法师
- P6352 [COCI2007-2008#3] CETIRI
- IDEA Debug时报错Cannot start compilation: the output path is not specified for module““
- mac安装java的jdk环境
- ConvNeXt网络结构搭建