python画柱状图--不同颜色并显示数值的方法


Posted in Python onDecember 13, 2018

用python画柱状图容易,但是如何对不同柱子使用不同颜色呢?同时在柱子顶端显示精确数值?

主要用的方法为:

atplotlib.pyplot.bar(left, height, width=0.8, bottom=None, hold=None, data=None, **kwargs)

参数说明:

left: 每一个柱形左侧的X坐标

height:每一个柱形的高度

width: 柱形之间的宽度

bottom: 柱形的Y坐标

color: 柱形的颜色

下面是代码示例(首先请先安装numpy以及matplotlib包):

import numpy as np 
import matplotlib.mlab as mlab 
import matplotlib.pyplot as plt 
 
X = [0.5] 
XX=[1.5] 
Y = [20] 
YY=[23] 
#fig = plt.figure() 
plt.bar(X, Y, 1, color="blue") 
plt.bar(XX,YY,1,color="yellow") #使用不同颜色 
plt.xlabel("X-axis") #设置X轴Y轴名称 
plt.ylabel("Y-axis") 
plt.title("bar chart")
#使用text显示数值 
for a,b in zip(X,Y): 
 plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=11) 
for a,b in zip(XX,YY): 
 plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=11)  
plt.ylim(0,37)  #设置Y轴上下限 
plt.show()

得到的图形如下:

python画柱状图--不同颜色并显示数值的方法

首先,前边设置的x、y值其实就代表了不同柱子在图形中的位置(坐标),通过for循环找到每一个x、y值的相应坐标——a、b,再使用plt.text在对应位置添文字说明来生成相应的数字标签,而for循环也保证了每一个柱子都有标签。

其中,a, b+0.05表示在每一柱子对应x值、y值上方0.05处标注文字说明, '%.0f' % b,代表标注的文字,即每个柱子对应的y值, ha='center', va= 'bottom'代表horizontalalignment(水平对齐)、verticalalignment(垂直对齐)的方式,fontsize则是文字大小。

以上这篇python画柱状图--不同颜色并显示数值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
你应该知道的python列表去重方法
Jan 17 Python
使用python遍历指定城市的一周气温
Mar 31 Python
Python学习小技巧之列表项的排序
May 20 Python
Python进阶学习之特殊方法实例详析
Dec 01 Python
Python绘制KS曲线的实现方法
Aug 13 Python
python实现年会抽奖程序
Jan 22 Python
Python开发网站目录扫描器的实现
Feb 21 Python
Python实现Wordcloud生成词云图的示例
Mar 30 Python
Python常见反爬虫机制解决方案
Jun 01 Python
Django中使用Celery的方法步骤
Dec 07 Python
selenium设置浏览器为headless无头模式(Chrome和Firefox)
Jan 08 Python
Python编解码问题及文本文件处理方法详解
Jun 20 Python
Python matplotlib的使用并自定义colormap的方法
Dec 13 #Python
python实现给scatter设置颜色渐变条colorbar的方法
Dec 13 #Python
matplotlib实现热成像图colorbar和极坐标图的方法
Dec 13 #Python
对matplotlib改变colorbar位置和方向的方法详解
Dec 13 #Python
python用plt画图时,cmp设置方法
Dec 13 #Python
python reverse反转部分数组的实例
Dec 13 #Python
对Python的zip函数妙用,旋转矩阵详解
Dec 13 #Python
You might like
学习php过程中的一些注意点的总结
2013/10/25 PHP
支付宝支付开发――当面付条码支付和扫码支付实例
2016/11/04 PHP
Javascript new关键字的玄机 以及其它
2010/08/25 Javascript
Javascript 鼠标移动上去小三角形滑块缓慢跟随效果
2013/04/26 Javascript
jquery配合css简单实现返回顶部效果
2013/09/30 Javascript
js禁止回车提交表单的示例代码
2013/12/23 Javascript
jQuery仿Flash上下翻动的中英文导航菜单实例
2015/03/10 Javascript
javascript将DOM节点添加到文档的方法实例分析
2015/08/04 Javascript
分享纯手写漂亮的表单验证
2015/11/19 Javascript
javascript self对象使用详解
2016/10/18 Javascript
纯js模仿windows系统日历
2017/02/04 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
2017/04/27 Javascript
微信小程序promsie.all和promise顺序执行
2017/10/27 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
2017/11/24 Javascript
Angular项目如何升级至Angular6步骤全纪录
2018/09/03 Javascript
jQuery序列化form表单数据为JSON对象的实现方法
2018/09/20 jQuery
JavaScript多种图形实现代码实例
2020/06/28 Javascript
vue2.0 解决抽取公用js的问题
2020/07/31 Javascript
[02:17]《辉夜杯》TRG战队巡礼
2015/10/26 DOTA
Python import自定义模块方法
2015/02/12 Python
低版本中Python除法运算小技巧
2015/04/05 Python
详解Django中的form库的使用
2015/07/18 Python
python如何查看系统网络流量的信息
2016/09/12 Python
python ansible服务及剧本编写
2017/12/29 Python
Python实现八皇后问题示例代码
2018/12/09 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
2019/01/07 Python
python实现维吉尼亚算法
2019/03/20 Python
python基础梳理(一)(推荐)
2019/04/06 Python
通用的Django注册功能模块实现方法
2021/02/05 Python
使用python实现学生信息管理系统
2021/02/25 Python
广州盈通面试题
2015/12/05 面试题
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
开业庆典策划方案
2014/02/18 职场文书
驾驶员安全责任书范本
2014/07/24 职场文书
2015年幼儿园保育工作总结
2015/05/12 职场文书
《秦兵马俑》教学反思
2016/02/24 职场文书