你可以用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散点图最佳拟合直线的代码相关推荐

  1. python散点图拟合曲线如何求拟合_python 拟合曲线并求参

    原博文 2019-06-02 14:35 − 需要对数据进行函数拟合,首先画一下二维散点图,目测一下大概的分布, 所谓正态分布,就是高斯分布,正态曲线是一种特殊的高斯曲线. python的scipy. ...

  2. python输入两个数求差_python差值_python差值法_python求差值 - 云+社区 - 腾讯云

    广告关闭 回望2020,你在技术之路上,有什么收获和成长么?对于未来,你有什么期待么?云+社区年度征文,各种定制好礼等你! 环境依赖api 网关提供 python 2.7 和 python 3 两个版 ...

  3. python输入n个数求平均值_Python 实现输入任意多个数,并计算其平均值的例子

    Python 实现输入任意多个数,并计算其平均值的例子 发布时间:2020-09-03 03:16:35 来源:脚本之家 阅读:76 学习了Python相关数据类型,函数的知识后,利用字符串的分割实现 ...

  4. 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.] ...

  5. origin中文版散点图拟合曲线_Origin绘图:3D散点图如何绘制拟合线、如何给数据图“化妆”...

    您潜心做科学实验!我潜心绘制曲线!您可以将文献中的"帅图"发给"编辑之谭",谭编辑重现其绘制过程.今天谭编辑为数据图"拟合"和"化 ...

  6. python二元多次函数拟合_Python实现的拟合二元一次函数功能示例【基于scipy模块】...

    本文实例讲述了Python实现的拟合二元一次函数功能.分享给大家供大家参考,具体如下: 背景: 使用scipy拟合一元二次函数. 参考: HYRY Studio-<用Python做科学计算> ...

  7. Python知道cos值求角度_Python——画一棵漂亮的樱花树

    最近用Python(大多是turtle库)绘制的樱花树有点火,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 (一) 动态生成樱花 效 ...

  8. python文字游戏源代码求年纪_Python实现猜年龄游戏代码实例

    1. 在猜年龄的基础上编写登录.注册方法,并且把猜年龄游戏分函数处理,如 2. 登录函数 3. 注册函数 4. 猜年龄函数 5. 选择奖品函数 代码如下 import json real_age = ...

  9. python中if语句求最大值_python 判断三个数字中的最大值实例代码

    python 判断三个数字中的最大值,具体代码如下所示: #判断三个数中最大值 n1= int(input('please enter the firest number:')) n2 = int(i ...

最新文章

  1. ❤️手撕这十道HiveSQL题还不能吊打面试官,却能保你不被吊打❤️【推荐收藏】
  2. 如何用LSTM自编码器进行极端事件预测?(含Python代码)
  3. java多线程-sleep()和wait()对比
  4. 九大排序算法,你会几个?
  5. WCF项目的架构设计
  6. linux之hexdump命令
  7. Java消息服务~消息属性
  8. 控件:DataGridView列类型
  9. android webview 像素,Android:在WebView中加载的图像中的像素质量降低
  10. linux软连接目标不存在,Linux ln创建软连接之后无法使用,无法whereis
  11. 接口(Interface)的作用
  12. java前后端分离(增删查改)
  13. 计算模型的GFLOPs和参数量 举例VGG16和DETR
  14. 邢帅——一个逆袭的草根
  15. vue请求拦截 给所有的api接口的请求 params 带上一个存储的值及qs的安装
  16. Win11-GTX3060-配置Pytorch GPU
  17. 计算机应用基础2011,2011统计师计算机应用基础:计算机概述
  18. 多年锤炼,迈向Kata 3.0 !走进开箱即用的安全容器体验之旅
  19. centos 命令行模式切换桌面化
  20. 项目部署常用linux命令(丰富的教程、资源)

热门文章

  1. 文件进行右键后 删除 “使用金山毒霸进行扫描”选项。
  2. java如何对不齐_[转帖]解决Jbuilder光标对不齐的问题
  3. 如何判断网页是动静态的
  4. 树莓派--街机网址链接
  5. Cesium已知经纬度获取其高度
  6. 洛谷 P7453 [THUSCH2017] 大魔法师
  7. P6352 [COCI2007-2008#3] CETIRI
  8. IDEA Debug时报错Cannot start compilation: the output path is not specified for module““
  9. mac安装java的jdk环境
  10. ConvNeXt网络结构搭建