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条件和循环的使用方法
Nov 01 Python
Python处理字符串之isspace()方法的使用
May 19 Python
利用python代码写的12306订票代码
Dec 20 Python
Python实现的简单计算器功能详解
Aug 25 Python
pandas通过字典生成dataframe的方法步骤
Jul 23 Python
Django ORM 查询管理器源码解析
Aug 05 Python
pytorch 在sequential中使用view来reshape的例子
Aug 20 Python
使用python的turtle绘画滑稽脸实例
Nov 21 Python
python爬虫构建代理ip池抓取数据库的示例代码
Sep 22 Python
python 基于Apscheduler实现定时任务
Dec 15 Python
使用python对excel表格处理的一些小功能
Jan 25 Python
Python实现排序方法常见的四种
Jul 15 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
详解yii2实现分库分表的方案与思路
2017/02/03 PHP
ThinkPHP中Widget扩展的两种写法及调用方法详解
2017/05/04 PHP
JS中简单的实现像C#中using功能(有源码下载)
2007/01/09 Javascript
JQuery优缺点分析说明
2010/06/09 Javascript
JavaScript 放大镜 放大倍率和视窗尺寸
2011/05/09 Javascript
JQuery里面的几种选择器 查找满足条件的元素$("#控件ID")
2011/08/23 Javascript
最佳6款用于移动网站开发的jQuery 图片滑块插件小结
2012/07/20 Javascript
javascript中的事件代理初探
2014/03/08 Javascript
jquery实现点击向下展开菜单项(伸缩导航)效果
2015/08/22 Javascript
jQuery EasyUI实现右键菜单变灰不可用效果
2015/09/24 Javascript
灵活使用数组制作图片切换js实现
2016/07/28 Javascript
nodejs如何获取时间戳与时间差
2016/08/03 NodeJs
angular基于路由控制ui-router实现系统权限控制
2016/09/27 Javascript
BootstrapValidator不触发校验的实现代码
2016/09/28 Javascript
jQuery实现点击任意位置弹出层外关闭弹出层效果
2016/10/19 Javascript
JavaScript数据结构链表知识详解
2016/11/21 Javascript
JavaScript判断浏览器及其版本信息
2017/01/20 Javascript
解决vue.js在编写过程中出现空格不规范报错的问题
2017/09/20 Javascript
python中base64加密解密方法实例分析
2015/05/16 Python
python使用paramiko实现远程拷贝文件的方法
2016/04/18 Python
Ubuntu安装Jupyter Notebook教程
2017/10/18 Python
使用python实现mqtt的发布和订阅
2019/05/05 Python
python利用paramiko实现交换机巡检的示例
2020/09/22 Python
python实现PolynomialFeatures多项式的方法
2021/01/06 Python
在PyCharm中安装PaddlePaddle的方法
2021/02/05 Python
HTML5调用手机发短信和打电话功能
2020/04/29 HTML / CSS
Nike瑞典官方网站:Nike.com (SE)
2018/11/26 全球购物
印度最好的在线药品订购网站:PharmEasy
2018/11/30 全球购物
英国时尚配饰、珠宝和服装网站:KJ Beckett
2020/01/23 全球购物
HttpServlet类中的主要方法都有哪些?各自的作用是什么?
2014/03/16 面试题
大学生会计职业生涯规划范文
2014/02/28 职场文书
2014年高一班主任工作总结
2014/12/05 职场文书
学生会副主席竞选稿
2015/11/19 职场文书
应用最多的公文《通知》如何写?
2019/04/02 职场文书
Nginx服务器添加Systemd自定义服务过程解析
2021/03/31 Servers
Java比较两个对象中全部属性值是否相等的方法
2021/08/07 Java/Android