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 制作图片转pdf工具
Jan 30 Python
快速查询Python文档方法分享
Dec 27 Python
flask使用session保存登录状态及拦截未登录请求代码
Jan 19 Python
python3 flask实现文件上传功能
Mar 20 Python
python去掉 unicode 字符串前面的u方法
Oct 21 Python
Django stark组件使用及原理详解
Aug 22 Python
PyCharm 2019.3发布增加了新功能一览
Dec 08 Python
django序列化serializers过程解析
Dec 14 Python
基于torch.where和布尔索引的速度比较
Jan 02 Python
使用pycharm和pylint检查python代码规范操作
Jun 09 Python
python爬虫用scrapy获取影片的实例分析
Nov 23 Python
Python 无限级分类树状结构生成算法的实现
Jan 21 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语法(5)
2006/10/09 PHP
php+xml实现在线英文词典之添加词条的方法
2015/01/23 PHP
php保存任意网络图片到服务器的方法
2015/04/14 PHP
php使用GD创建保持宽高比缩略图的方法
2015/04/17 PHP
PHP中字符与字节的区别及字符串与字节转换示例
2016/10/15 PHP
用javascript实现分割提取页面所需内容
2007/05/09 Javascript
表单类各种类型(文本框)失去焦点效果jquery代码
2013/04/26 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
使用AngularJS编写较为优美的JavaScript代码指南
2015/06/19 Javascript
jquery图片滚动放大代码分享(2)
2015/08/28 Javascript
js实现仿MSN带关闭功能的右下角弹窗代码
2015/09/04 Javascript
JS中对象与字符串的互相转换详解
2016/05/20 Javascript
js实现小窗口拖拽效果
2016/12/03 Javascript
AngularJS基于ngInfiniteScroll实现下拉滚动加载的方法
2016/12/14 Javascript
bootstrap警告框使用方法解析
2017/01/13 Javascript
windows 下安装nodejs 环境变量设置
2017/02/02 NodeJs
简单谈谈js的数据类型
2017/09/25 Javascript
vue导出html、word和pdf的实现代码
2018/07/31 Javascript
微信小程序局部刷新触发整页刷新效果的实现代码
2018/11/21 Javascript
jquery实现加载更多"转圈圈"效果(示例代码)
2020/11/09 jQuery
在JavaScript中查找字符串中最长单词的三种方法(推荐)
2021/01/18 Javascript
ReactRouter的实现方法
2021/01/25 Javascript
python二叉树遍历的实现方法
2013/11/21 Python
Python3 XML 获取雅虎天气的实现方法
2018/02/01 Python
python脚本实现验证码识别
2018/06/07 Python
使用 Python 玩转 GitHub 的贡献板(推荐)
2019/04/04 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
python+pygame实现坦克大战
2019/09/10 Python
优秀英语专业毕业生求职信
2013/11/23 职场文书
元旦活动感言
2014/03/08 职场文书
销售职业生涯规划范文
2014/03/14 职场文书
商务日语专业的自荐信
2014/05/23 职场文书
2019奶茶店创业计划书范本,值得你借鉴
2019/08/14 职场文书
我对PyTorch dataloader里的shuffle=True的理解
2021/05/20 Python
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python
win10双系统怎么删除一个系统?win10电脑有两个系统删除一个的操作方法
2022/07/15 数码科技