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获得一个月有多少天的方法
Jun 04 Python
python实现泊松图像融合
Jul 26 Python
Python基本socket通信控制操作示例
Jan 30 Python
从0开始的Python学习014面向对象编程(推荐)
Apr 02 Python
python实现网站用户名密码自动登录功能
Aug 09 Python
python生成器推导式用法简单示例
Oct 08 Python
关于numpy.where()函数 返回值的解释
Dec 06 Python
Python数据持久化存储实现方法分析
Dec 21 Python
详解Pycharm出现out of memory的终极解决方法
Mar 03 Python
详解Python设计模式之策略模式
Jun 15 Python
python基本算法之实现归并排序(Merge sort)
Sep 01 Python
matplotlib制作雷达图报错ValueError的实现
Jan 05 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
什么是短波收听SWL
2021/03/01 无线电
PHP安全配置
2006/10/09 PHP
40个迹象表明你还是PHP菜鸟
2008/09/29 PHP
Zend的MVC机制使用分析(二)
2013/05/02 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
PHP代码覆盖率统计详解
2020/07/22 PHP
javascript之函数直接量(function(){})()
2007/06/29 Javascript
基于jQuery的获得各种控件Value的方法
2010/11/19 Javascript
使用jquery插件实现图片延迟加载技术详细说明
2011/03/12 Javascript
用JS提交参数创建form表单在FireFox中遇到的问题
2013/01/16 Javascript
jQuery javaScript捕获回车事件(示例代码)
2013/11/07 Javascript
JavaScript indexOf方法入门实例(计算指定字符在字符串中首次出现的位置)
2014/10/17 Javascript
JS实现选中当前菜单后高亮显示的导航条效果
2015/10/15 Javascript
JavaScript实现简单的tab选项卡切换
2016/01/05 Javascript
vue的props实现子组件随父组件一起变化
2016/10/27 Javascript
js实现3D图片环展示效果
2017/03/09 Javascript
关于webpack代码拆分的解析
2017/07/20 Javascript
加载 vue 远程代码的组件实例详解
2017/11/20 Javascript
基于vue-upload-component封装一个图片上传组件的示例
2018/10/16 Javascript
js+css实现全屏侧边栏
2020/06/16 Javascript
[02:51]2018年度DOTA2最佳中单位选手-完美盛典
2018/12/17 DOTA
彻底理解Python list切片原理
2017/10/27 Python
python数据抓取分析的示例代码(python + mongodb)
2017/12/25 Python
python实现图片批量压缩程序
2018/07/23 Python
对django中render()与render_to_response()的区别详解
2018/10/16 Python
python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能
2019/07/04 Python
HTML5之SVG 2D入门3—文本与图像及渲染文本介绍
2013/01/30 HTML / CSS
服装电子商务创业计划书
2014/01/30 职场文书
会计核算科岗位职责
2014/03/19 职场文书
学校节能减排倡议书
2014/05/16 职场文书
2014公司党员自我评价范文
2014/09/11 职场文书
信访工作汇报材料
2014/10/27 职场文书
珍爱生命主题班会
2015/08/13 职场文书
postgreSQL数据库基础知识介绍
2022/04/12 PostgreSQL
PyTorch中permute的使用方法
2022/04/26 Python
MySQL批量更新不同表中的数据
2022/05/11 MySQL