python条形图数据标签_用Python画一个带有误差线的条形图:附完整代码

大家好,这是近期学习的data analysis 那本书的总结,发表这些东西的主要目的就是督促自己,希望大家关注评论指出不足,一起进步。内容我都会写的很细,并且按照文章中的代码自己也可以做出一样的结果,一个目的就是零基础也能懂,因为自己就是什么基础没有从零学Python的。


带有误差线的条形图在很多地方都是非常有用的,尤其是在学术文章中经常可以看见,用python怎么做呢?来看看吧。今天我们将使用Python基于一个三种不同材料的热膨胀系数的小数据集做一个如下的图:

f2303ae9da8b4286a9ea67266dc5b4fe

首先创建新Python文件,导入numpy和matplotlib,然后录入数据:

c56b89ab8ee744d6809f0611b315b6d6

然后计算我们需要的均属以及标准差:np.mean()函数计算三种材料的热膨胀系数的平均值,用np.std()函数计算每种金属的标准差:

2ed03187d9d049dbbf3779a10ec6d34b

然后生成画图所需的2个list:

15b8c086714c482ea02da6e9b9387199

这儿需要解释一下:变量materials等会作为横轴标签,x_pos作为横轴标签位置,我们还需要CETs以及error分别代表误差线的中心和高度。


现在就可以画图了。

首先,我们将使用plt.subplots()函数创建一个画布fig,并在该画布中创建一个子图对象ax。然后对子图进行设置:

b0c9447663e84908a67296dbef37dc65

ax.bar()的意思就是我们要画柱状图了

注意传递给ax.bar()的参数:

  • x_pos 是x轴数据。
  • CTEs 是y轴数据。
  • yerr=error 设置误差线的高度说白了就是标准偏差。(这是加误差线的关键)
  • 关键字参数(align='center', alpha=0.5, ecolor='black', capsize=10)为绘图设定样式。

同时我们还将y轴标题设为“Coefficient of Thermal Expansion” ,ax.set_xticks()设置x轴上每个标签的位置。ax.set_ticklabels()设置标签内容。ax.set_title()和ax.yaxis.grid(True)分别添加标题和水平网格线。


最后,我们还可以使用plt.savefig() 函数将图形保存到名为bar_plot_with_error_bars.png的文件中。

f7be1a2ca3d2417cb8d7e925b6fb1341

运行代码就可以出图啦!


好了,今天就这么多,欢迎大家关注交流,一起进步,一个小白的python进阶之路。最后附上全部完整代码:

7c92bc17fb1d4930b28401d903e70f75

代码1

ddbeedc9f3c74fe59f96bdab61cca9fe

代码2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值