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 json模块使用实例
Apr 11 Python
详解Python的Django框架中的中间件
Jul 24 Python
Python实现多线程抓取妹子图
Aug 08 Python
win10系统中安装scrapy-1.1
Jul 03 Python
python+pyqt实现12306图片验证效果
Oct 25 Python
使用Pyinstaller的最新踩坑实战记录
Nov 08 Python
详解python中的Turtle函数库
Nov 19 Python
Python使用requests提交HTTP表单的方法
Dec 26 Python
django 使用全局搜索功能的实例详解
Jul 18 Python
Python处理session的方法整理
Aug 29 Python
Python之Numpy的超实用基础详细教程
Oct 23 Python
基于Django统计博客文章阅读量
Oct 29 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
Linux下将excel数据导入到mssql数据库中的方法
2010/02/08 PHP
基于PHP+Ajax实现表单验证的详解
2013/06/25 PHP
php根据生日计算年龄的方法
2015/07/13 PHP
CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法
2015/12/17 PHP
PHP自定义函数实现格式化秒的方法
2016/09/14 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
2017/11/17 PHP
让whoops帮我们告别ThinkPHP6的异常页面
2020/03/02 PHP
Javascript----文件操作
2007/01/18 Javascript
多种方法实现JS动态添加事件
2013/11/01 Javascript
jquery 绑定回车动作扑捉回车键触发的事件
2014/03/26 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
JavaScript保留两位小数的2个自定义函数
2014/05/05 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
基于JS模仿windows文件按名称排序效果
2016/06/29 Javascript
jQuery插件ajaxFileUpload异步上传文件
2016/10/19 Javascript
原生js实现淘宝购物车功能
2020/06/23 Javascript
Node.js+ELK日志规范的实现
2019/05/23 Javascript
Angular8 简单表单验证的实现示例
2020/06/03 Javascript
Python 文件操作实现代码
2009/10/07 Python
在Python 3中实现类型检查器的简单方法
2015/07/03 Python
使用Python操作excel文件的实例代码
2017/10/15 Python
Python编程给numpy矩阵添加一列方法示例
2017/12/04 Python
Python 读取某个目录下所有的文件实例
2018/06/23 Python
Python函数返回不定数量的值方法
2019/01/22 Python
Python连接字符串过程详解
2020/01/06 Python
CSS3实现鼠标悬停显示扩展内容
2016/08/24 HTML / CSS
Linux内核产生并发的原因
2016/11/08 面试题
大学生学习2014全国两会心得体会
2014/03/13 职场文书
幼儿园老师工作总结2015
2015/05/22 职场文书
赤壁观后感(2)
2015/06/15 职场文书
个人欠条范本
2015/07/03 职场文书
有关浪费资源的建议书
2015/09/14 职场文书
医院中层管理人员培训心得体会
2016/01/11 职场文书
深入理解python协程
2021/06/15 Python
JS实现页面炫酷的时钟特效示例
2022/08/14 Javascript
HTML中link标签属性的具体用法
2023/05/07 HTML / CSS