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 相关文章推荐
解决uWSGI的编码问题详解
Mar 24 Python
python SSH模块登录,远程机执行shell命令实例解析
Jan 12 Python
python数据处理 根据颜色对图片进行分类的方法
Dec 08 Python
Kali Linux安装ipython2 和 ipython3的方法
Jul 11 Python
对Django中static(静态)文件详解以及{% static %}标签的使用方法
Jul 28 Python
python3 webp转gif格式的实现示例
Dec 10 Python
Flask中endpoint的理解(小结)
Dec 11 Python
Tensorflow: 从checkpoint文件中读取tensor方式
Feb 10 Python
安装完Python包然后找不到模块的解决步骤
Feb 13 Python
Python Socket TCP双端聊天功能实现过程详解
Jun 15 Python
python工具dtreeviz决策树可视化和模型可解释性
Mar 03 Python
Python+SeaTable实现计算两个日期间的工作日天数
Jul 07 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
thinkphp中的url跳转用法分析
2016/07/12 PHP
动态调用css文件——jquery的应用
2007/02/20 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
使用jQuery全局事件ajaxStart为特定请求实现提示效果的代码
2010/12/30 Javascript
JS 实现图片直接下载示例代码
2013/07/22 Javascript
javascript按位非运算符的使用方法
2013/11/14 Javascript
从数组中随机取x条不重复数据的JS代码
2013/12/24 Javascript
JsRender实用入门教程
2014/10/31 Javascript
js实现的四级左侧网站分类菜单实例
2015/05/06 Javascript
nodejs实现遍历文件夹并统计文件大小
2015/05/28 NodeJs
jquery验证邮箱格式并显示提交按钮
2015/11/07 Javascript
js实现不重复导入的方法
2016/03/02 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
2016/12/02 Javascript
JS实现针对给定时间的倒计时功能示例
2017/04/11 Javascript
解决vue-router进行build无法正常显示路由页面的问题
2018/03/06 Javascript
vue cli 3.0 搭建项目的图文教程
2019/05/17 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
2019/05/21 Javascript
js判断非127开头的IP地址的实例代码
2020/01/05 Javascript
vue css 引入asstes中的图片无法显示的四种解决方法
2020/03/16 Javascript
JS数组及对象遍历方法代码汇总
2020/06/16 Javascript
vscode+gulp轻松开发小程序的完整步骤
2020/10/18 Javascript
原生js实现自定义消息提示框
2020/11/19 Javascript
vue使用exif获取图片旋转,压缩的示例代码
2020/12/11 Vue.js
[51:05]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第一局
2016/03/06 DOTA
Python实现批量更换指定目录下文件扩展名的方法
2016/09/19 Python
Python利用flask sqlalchemy实现分页效果
2020/08/02 Python
Django+Ajax+jQuery实现网页动态更新的实例
2018/05/28 Python
对python list 遍历删除的正确方法详解
2018/06/29 Python
python 进程 进程池 进程间通信实现解析
2019/08/23 Python
python 读取二进制 显示图片案例
2020/04/24 Python
聊聊python中的循环遍历
2020/09/07 Python
输入一行文字,找出其中大写字母、小写字母、空格、数字、及其他字符各有多少
2016/04/15 面试题
会计专业自我鉴定范文
2013/10/06 职场文书
高级方案规划工程师岗位职责
2013/11/29 职场文书
宿舍使用违章电器检讨书
2014/01/12 职场文书
教师自我鉴定范文
2014/03/20 职场文书