Matplotlib学习---用matplotlib画误差线(errorbar)

误差线用于显示数据的不确定程度,误差一般使用标准差(Standard Deviation)或标准误差(Standard Error)。

 

标准差(SD):是方差的算术平方根。如果是总体标准差,那么用σ表示,如果是样本标准差,那么用s表示。标准差反映数据集的离散程度,标准差越小,就说明数据越集中在其平均值附近。公式:(总体),{\displaystyle s={\sqrt {\frac {\sum _{i=1}^{N}(x_{i}-{\overline {x}})^{2}}{N-1}}}.}(样本)
标准误差(SE):是样本分布的标准差。如果是样本平均数分布的标准差,那么就称为SEM(standard error of the mean),就是说每次从总体中抽取n个样本,抽取很多次后,每次抽样的平均值( )就形成了一个数据分布,这个数据分布有自己的平均值和标准差。抽样的平均值分布的平均数应该接近总体平均数( μ)。标准误差反映样本(sample)对于总体(population)的差异性,每次抽样的样本数越多,标准误差就越小。公式:{\displaystyle {\sigma }_{\bar {x}}\ ={\frac {\sigma }{\sqrt {n}}}}

 

下面利用Nathan Yau所著的《鲜活的数据:数据可视化指南》一书中的数据,学习画图。

 

数据地址:http://datasets.flowingdata.com/crimeRatesByState2005.csv

 

以下是这个数据文件的前5行:

           state  murder  forcible_rape  robbery  aggravated_assault  \
0  United States     5.6           31.7    140.7               291.1   
1        Alabama     8.2           34.3    141.4               247.8   
2         Alaska     4.8           81.1     80.9               465.1   
3        Arizona     7.5           33.8    144.4               327.4   
4       Arkansas     6.7           42.9     91.1               386.8   burglary  larceny_theft  motor_vehicle_theft  population  
0     726.7         2286.3                416.7   295753151  
1     953.8         2650.0                288.3     4545049  
2     622.5         2599.1                391.0      669488  
3     948.4         2965.2                924.4     5974834  
4    1084.6         2711.2                262.1     2776221

这是美国各州各种犯罪行为的发生率(每10万人口)。

 

让我们画一个图,把全美各犯罪率的平均数,标准差展现出来。

 

误差线: ax.errorbar(x,y,yerr=error size in y axis,xerr=error size in x axis)

 

代码如下:

import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
crime=pd.read_csv(r"http://datasets.flowingdata.com/crimeRatesByState2005.csv")
fig,ax=plt.subplots(figsize=(8,4))col=crime.columns.astype(str) #提取列名,将来做x轴刻度标签
crime=crime[1:] #把第一行US的数据去除
data=crime.loc[:,"murder":"motor_vehicle_theft"] #提取数据部分,以便将来进行计算

crime.loc["mean"]=data.apply(np.mean) #增加一行,为数据每列的均值,apply函数用于数据每一列
crime.loc["standard deviation"]=data.apply(np.std) #增加一行,为数据每列的标准差,apply函数用于数据每一列#画误差线,x轴一共7项,y轴显示平均值,y轴误差为标准差
ax.errorbar(np.arange(7),crime.loc["mean","murder":"motor_vehicle_theft"],\yerr=crime.loc["standard deviation","murder":"motor_vehicle_theft"],\fmt="o",color="blue",ecolor='grey',elinewidth=2,capsize=4)
ax.set_xticklabels(col,rotation=45) #设置x轴刻度标签,并使其倾斜45度,不至于重叠

plt.show()

 

图像如下:

 

 

另外,还可以在柱形图或条形图上画误差线,分别在ax.bar命令里加上yerr参数,或在ax.barh命令里加上xerr参数即可。

 

转载于:https://www.cnblogs.com/HuZihu/p/9418903.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/279539.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于自增id 你可能还不知道

导读:在使用MySQL建表时,我们通常会创建一个自增字段(AUTO_INCREMENT),并以此字段作为主键。本篇文章将以问答的形式讲述关于自增id的一切。 注: 本文所讲的都是基于Innodb存储引擎。 1.MySQL为什么建议将自增列id设为主键&#x…

Android One和Android Go有什么区别?

In 2014, Google announced a lineup of low-cost, low-spec phones called Android One. In 2017, they announced Android Go, specifically designed for low-cost, low-spec phones. So…what’s the difference? 2014年,Google宣布了一系列名为Android One的低…

outlook advanced find 快捷键不起作用

症状:用户反应按outlook advanced find的快捷键时无效,快捷键为CtrlShiftF。第一感觉是肯定跟别的软件有冲突了,观察了下,发现用户正在使用sougou拼音输入法,于是点其属性查看,果然发现与其的简繁切换冲突了…

vue1.0和vue2.0生命周期----整理一

## 1. 作用域区别   1.x 随意的定义作用域   2.x 不允许body 或者html 元素 ## 2. 生命周期   1.x:     created 实例已经创建     beforeCompile 在编译之前     compiled 编译之后     ready 实例已经插入到文档之中     beforeDetroy 在销毁之前 …

21-while里的break简单用法

break是结束循环,break之后、循环体内代码不再执行。 while True:yn input(Continue(y/n): )if yn in [n,N]:breakprint(running......) 结果输出: 转载于:https://www.cnblogs.com/hejianping/p/10861816.html

视频造假_如何发现“深造假”面部切换视频

视频造假Recently, Reddit has been making news again with a subreddit in w hich people use a machine learning tool called “Deep Fake” to automatically replace one person’s face with another in a video. Obviously, since this is the internet, people are us…

C#实现MD5加密

C#实现MD5加密。 1、创建MD5Str.cs加密处理类 [csharp] view plaincopy public class MD5Str { /// <summary> /// 字符串MD5加密 /// </summary> /// <param name"Text">要加密的字符串</param> /// <returns…

【agc004f】Namori Grundy

那个问一下有人可以解释以下这个做法嘛&#xff0c;看不太懂QwQ~ Description 有一个n个点n条边的有向图&#xff0c;点的编号为从1到n。 给出一个数组p&#xff0c;表明有&#xff08;p1&#xff0c;1&#xff09;&#xff0c;&#xff08;p2&#xff0c;2&#xff09;&#x…

找到特定ip地址 修改ip_您如何找到网站的IP地址?

找到特定ip地址 修改ipWhether you are in it just for a bit of geeky fun, or are seriously wanting to know the answer, how do you find out the IP address for a website? Today’s SuperUser Q&A post looks at the answer, and how to know if more than one we…

Rational Rose 2003 下载、破解及安装方法(图文)

方法一&#xff1a; 1、安装Rational Rose2003时&#xff0c;在需选择安装项的时候&#xff0c;只选择Rational Rose EnterPrise Edition即可&#xff0c;不需选择其他项&#xff0c;之后选择“DeskTop Installation from CD Image“&#xff0c;一路下一步。出现Mem_pointer_B…

数据结构:莫队

莫队算法是用来处理一类无修改的离线区间询问问题 莫队的精髓就在于&#xff0c;离线得到了一堆需要处理的区间后&#xff0c;合理的安排这些区间计算的次序以得到一个较优的复杂度 代表题目是BZOJ2038这道题 进行区间询问[l,r]&#xff0c;输出该区间内随机抽两次抽到相同颜色…

【学习笔记】第三章 python3核心技术与实践--Jupyter Notebook

可能你已经知道&#xff0c;Python 在 14 年后的“崛起”&#xff0c;得益于机器学习和数学统计应用的兴起。那为什么 Python 如此适合数学统计和机器学习呢&#xff1f;作为“老司机”的我可以肯定地告诉你&#xff0c;Jupyter Notebook &#xff08;https://jupyter.org/&…

二进制安位处理_处理器与安​​全性之间的联系是什么?

二进制安位处理Newer processors are able to contribute to the security of your system, but what exactly do they do to help? Today’s Super User Q&A post looks at the link between processors and system security. 较新的处理器能够为您的系统安全做出贡献&am…

李开复现身说法成功的十个启发

http://blog.sina.com.cn/kaifulee自信不失谦虚&#xff0c;谦虚不失自信天赋就是兴趣 兴趣就是天赋思考比传道重要 观点比解惑重要我不同意你 但我支持你挫折不是惩罚 而是学习的机会创新不重要 有用的创新才重要完美的工作 成长兴趣 影响力用勇气改变可以改变的事情做最好的领…

关于width: 100%的一些看法

一.position对width 设置为百分比的影响<html><head><style type"text/css">img {width: 50%}body {margin: 8px;}</style> </head><body><div style" min-height: 10px; background: red; "><div><im…

Haproxy+多台MySQL从服务器(Slave) 实现负载均衡

本系统采用MySQL一主多从模式设计&#xff0c;即1台 MySQL“主”服务器(Master)多台“从”服务器(Slave)&#xff0c;“从”服务器之间通过Haproxy进行负载均衡&#xff0c;对外只提供一个访问IP&#xff0c;当程序需要访问多台"从"服务器时&#xff0c;只需要访问Ha…

爱普生第三方相机_值得购买第三方相机镜头吗?

爱普生第三方相机When people buy a Canon or Nikon camera, they often assume that they can only buy Canon or Nikon lenses. But that isn’t true. While Nikon lenses won’t work on your Canon camera, there are third-party lens manufacturers—such as Sigma, Tam…

[BZOJ4182]Shopping

description 权限题。 树上\(n\)个节点每个节点都有一种物品&#xff0c;每种物品有其价值&#xff0c;价格&#xff0c;数量&#xff0c;只能买一个连通块中的物品&#xff0c;求\(m\)元能买到物品价值的最大值。 data range \[ n\le 500,m\le 4000,T\le 5,c_i\le m\] solutio…

如何用 Flutter 实现混合开发?闲鱼公开源代码实例

2019独角兽企业重金招聘Python工程师标准>>> 具有一定规模的 App 通常有一套成熟通用的基础库&#xff0c;尤其是阿里系 App&#xff0c;一般需要依赖很多体系内的基础库。那么使用 Flutter 重新从头开发 App 的成本和风险都较高。所以在 Native App 进行渐进式迁移…

Silverlight之工具箱使用1

我们在开发Silverlight项目时必定需要使用VS自带的一些控件&#xff0c;但是这些有限的控件有时候难以满足开发时的需求&#xff0c;因此MS给我们大家提供另外一套工具&#xff0c;来缓解Silverlight开发包的不足。此工具箱免费下载地址是&#xff1a;http://silverlight.codep…