python绘制条形图方法代码详解


Posted in Python onDecember 19, 2017

1.首先要绘制一个简单的条形图

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import mlab
from matplotlib import rcParams
fig1 = plt.figure(2)
rects =plt.bar(left = (0.2,1),height = (1,0.5),width = 0.2,align="center",yerr=0.000001)
plt.title('Pe')
plt.show()

python绘制条形图方法代码详解

1.1上面中rects=plt.bar(left=(0.2,1),height=(1,0.5),width=0.2,align=”center”,yerr=0.000001)这句代码是最重要的,其中left表示直方图的开始的位置(也就是最左边的地方),height是指直方图的高度,当直方图太粗时,可以通过width来定义直方图的宽度,注意多个直方图要用元组,yerr这个参数是防止直方图触顶。

2.增加直方图脚注

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import mlab
from matplotlib import rcParams
fig1 = plt.figure(2)
rects =plt.bar(left = (0.2,1),height = (1,0.5),width = 0.2,align="center",yerr=0.000001)
plt.title('Pe')
plt.xticks((0.2,1),('frst','second'))
plt.show()

python绘制条形图方法代码详解

3.条形图上显示具体的数字(自动编号)

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import mlab
from matplotlib import rcParams
fig1 = plt.figure(2)
rects =plt.bar(left = (0.2,1),height = (1,0.5),width = 0.2,align="center",yerr=0.000001)
plt.title('Pe')
def autolabel(rects):
  for rect in rects:
    height = rect.get_height()
    plt.text(rect.get_x()+rect.get_width()/2., 1.03*height, '%s' % float(height))
autolabel(rects)
plt.xticks((0.2,1),('frst','second'))
plt.show()

python绘制条形图方法代码详解

4.改变颜色

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import mlab
from matplotlib import rcParams
fig1 = plt.figure(2)
rects =plt.bar(left = (0.2,1),height = (1,0.5),color=('r','g'),width = 0.2,align="center",yerr=0.000001)
plt.title('Pe')
def autolabel(rects):
  for rect in rects:
    height = rect.get_height()
    plt.text(rect.get_x()+rect.get_width()/2., 1.03*height, '%s' % float(height))
autolabel(rects)
plt.xticks((0.2,1),('frst','second'))
plt.show()

python绘制条形图方法代码详解

5.添加图注

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import mlab
from matplotlib import rcParams
fig1 = plt.figure(2)
rects1 =plt.bar(left = (0.2),height = (0.5),color=('g'),label=(('no1')),width = 0.2,align="center",yerr=0.000001)
rects2 =plt.bar(left = (1),height = (1),color=('r'),label=(('no2')),width = 0.2,align="center",yerr=0.000001)
plt.legend()
plt.xticks((0.2,1),('frst','second'))
plt.title('Pe')

def autolabel(rects):
  for rect in rects:
    height = rect.get_height()
    plt.text(rect.get_x()+rect.get_width()/2., 1.03*height, '%s' % float(height))
autolabel(rects1)
autolabel(rects2)
plt.show()

python绘制条形图方法代码详解

6大家根据自己的需要自己来绘制自己的条形图

下面回答网友提问,如何画在条形图上垂直显示数据:

下面这个函数是用来垂直显示的,其中设置角度就可以以任意方式来显示。

def autolabel(rects,Num=1.12,rotation1=90,NN=1):
    for rect in rects:
      height = rect.get_height()
      plt.text(rect.get_x()-0.04+rect.get_width()/2., Num*height, '%s' % float(height*NN),rotation=rotation1)

调用方式如下

rects1 =plt.bar(left = (0.05),height = (Pe_FH),color=('b'),label=('FHMM'),width = 0.1,align="center",yerr=0.000001);
autolabel(rects1,1.09);

下面是效果图

python绘制条形图方法代码详解

总结

以上就是本文关于python绘制条形图方法代码详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参考本站:

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python中的XML库4Suite Server的介绍
Apr 14 Python
python遍历一个目录,输出所有的文件名的实例
Apr 23 Python
python绘制评估优化算法性能的测试函数
Jun 25 Python
python使用pandas处理excel文件转为csv文件的方法示例
Jul 18 Python
python代码 FTP备份交换机配置脚本实例解析
Aug 01 Python
python 微信好友特征数据分析及可视化
Jan 07 Python
在tensorflow中实现去除不足一个batch的数据
Jan 20 Python
python如何通过闭包实现计算器的功能
Feb 22 Python
django实现模板中的字符串文字和自动转义
Mar 31 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
只用50行Python代码爬取网络美女高清图片
Jun 02 Python
Python实现对齐打印 format函数的用法
Apr 28 Python
Python实现两款计算器功能示例
Dec 19 #Python
Python构建网页爬虫原理分析
Dec 19 #Python
Python2.X/Python3.X中urllib库区别讲解
Dec 19 #Python
Python实现采用进度条实时显示处理进度的方法
Dec 19 #Python
Python实现矩阵加法和乘法的方法分析
Dec 19 #Python
分析python切片原理和方法
Dec 19 #Python
python实现redis三种cas事务操作
Dec 19 #Python
You might like
PHP版自动生成文章摘要
2008/07/23 PHP
PHP导入导出Excel代码
2015/07/07 PHP
window.location.href = window.location.href 跳转无反应 a超链接onclick事件写法
2013/08/21 Javascript
js在IE与firefox的差异集锦
2014/11/11 Javascript
基于JavaScript将表单序列化类型的数据转化成对象的处理(允许对象中包含对象)
2015/12/28 Javascript
JavaScript常用字符串与数组扩展函数小结
2016/04/24 Javascript
jquery解析XML及获取XML节点名称的实现代码
2016/05/18 Javascript
jquery事件绑定解绑机制源码解析
2016/09/19 Javascript
js转换对象为xml
2017/02/17 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
使用Vuex实现一个笔记应用的方法
2018/03/13 Javascript
浅谈JavaScript面向对象--继承
2019/03/20 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
[55:32]2018DOTA2亚洲邀请赛 4.4 淘汰赛 EG vs LGD 第二场
2018/04/05 DOTA
[50:17]Newbee vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
Python中统计函数运行耗时的方法
2015/05/05 Python
python类和函数中使用静态变量的方法
2015/05/09 Python
Python单例模式的两种实现方法
2017/08/14 Python
Python异常对代码运行性能的影响实例解析
2018/02/08 Python
python使用生成器实现可迭代对象
2018/03/20 Python
django 解决manage.py migrate无效的问题
2018/05/27 Python
PyQt5使用QTimer实现电子时钟
2019/07/29 Python
Django在admin后台集成TinyMCE富文本编辑器的例子
2019/08/09 Python
Python中断多重循环的思路总结
2019/10/04 Python
地图可视化神器kepler.gl python接口的使用方法
2020/12/22 Python
ziaja齐叶雅官方海外旗舰店:来自波兰的天然护肤品牌
2017/01/02 全球购物
曼联官方网上商店:Manchester United Direct
2017/07/28 全球购物
美国在线轮胎零售商:SimpleTire
2019/04/08 全球购物
医学专业个人求职自荐信格式
2013/09/23 职场文书
外企求职信范文分享
2013/12/31 职场文书
护士见习期自我鉴定
2014/02/08 职场文书
《生命 生命》教学反思
2014/04/19 职场文书
放飞梦想演讲稿600字
2014/08/26 职场文书
公司委托书格式范本
2014/09/16 职场文书
2019自荐信范文集锦!
2019/07/03 职场文书
SpringBoot整合JWT的入门指南
2021/06/29 Java/Android