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实现根据指定端口探测服务器/模块部署的方法
Aug 25 Python
Python中类型关系和继承关系实例详解
May 25 Python
python实现的二叉树定义与遍历算法实例
Jun 30 Python
python matplotlib中文显示参数设置解析
Dec 15 Python
Python运维之获取系统CPU信息的实现方法
Jun 11 Python
python ChainMap 合并字典的实现步骤
Jun 11 Python
python 读取修改pcap包的例子
Jul 23 Python
Python3中urlencode和urldecode的用法详解
Jul 23 Python
Python 依赖库太多了该如何管理
Nov 08 Python
解决pytorch-yolov3 train 报错的问题
Feb 18 Python
python中subplot大小的设置步骤
Jun 28 Python
python 字典和列表嵌套用法详解
Jun 29 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 模板高级篇总结
2006/12/21 PHP
PHP 万年历实现代码
2012/10/18 PHP
Laravel 登录后清空COOKIE的操作方法
2019/10/14 PHP
js判断变量是否空值的代码
2008/10/26 Javascript
JQuery 文本框使用小结
2010/05/22 Javascript
JavaScript将Table导出到Excel实现思路及代码
2013/03/13 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
JS父页面与子页面相互传值方法
2014/03/05 Javascript
将字符串中由空格隔开的每个单词首字母大写
2014/04/06 Javascript
JavaScript的原型继承详解
2015/02/15 Javascript
JavaScript jquery及AJAX小结
2016/01/24 Javascript
简单讲解jQuery中的子元素过滤选择器
2016/04/18 Javascript
js防阻塞加载的实现方法
2016/09/09 Javascript
BooStrap对导航条的改造实践小结
2016/09/21 Javascript
Javascript数组循环遍历之forEach详解
2016/11/07 Javascript
再谈Angular4 脏值检测(性能优化)
2018/04/23 Javascript
JS简单判断是否在微信浏览器打开的方法示例
2019/01/08 Javascript
JavaScript实现简单验证码
2020/08/24 Javascript
VUE Elemen-ui之穿梭框使用方法详解
2021/01/19 Javascript
Python可变参数函数用法实例
2015/07/07 Python
Python中交换两个元素的实现方法
2018/06/29 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
python3+PyQt5 创建多线程网络应用-TCP客户端和TCP服务器实例
2019/06/17 Python
python 爬取B站原视频的实例代码
2020/09/09 Python
详解向scrapy中的spider传递参数的几种方法(2种)
2020/09/28 Python
美国最受欢迎的度假租赁网站:VRBO
2016/08/02 全球购物
欧铁通票官方在线销售网站:Eurail.com
2017/10/14 全球购物
速比涛英国官网:Speedo英国
2019/07/15 全球购物
Sport-Thieme荷兰:购买体育用品
2019/08/25 全球购物
自然健康的概念:Natural Healthy Concepts
2020/01/26 全球购物
什么是smarty? Smarty的优点是什么?
2013/08/11 面试题
什么是Web Service?
2012/07/25 面试题
药剂专业毕业生求职信
2014/06/24 职场文书
员工辞职信怎么写
2015/02/27 职场文书
七年级作文之英语老师
2019/10/28 职场文书
Nginx配置https的实现
2021/11/27 Servers