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中实现k-means聚类算法详解
Nov 11 Python
Python进阶之尾递归的用法实例
Jan 31 Python
python中文编码与json中文输出问题详解
Aug 24 Python
Python中staticmethod和classmethod的作用与区别
Oct 11 Python
Python 实现文件打包、上传与校验的方法
Feb 13 Python
Python正则表达式匹配日期与时间的方法
Jul 07 Python
python多进程并行代码实例
Sep 30 Python
win10系统Anaconda和Pycharm的Tensorflow2.0之CPU和GPU版本安装教程
Dec 03 Python
解决python DataFrame 打印结果不换行问题
Apr 09 Python
python 双循环遍历list 变量判断代码
May 04 Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
Nov 30 Python
Keras保存模型并载入模型继续训练的实现
Feb 20 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 jquery 多文件上传简单实例
2013/12/23 PHP
php实例分享之通过递归实现删除目录下的所有文件详解
2014/05/15 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
模拟select的代码
2011/10/19 Javascript
一个页面元素appendchild追加到另一个页面元素的问题
2013/01/27 Javascript
Node.js实现文件上传
2016/07/05 Javascript
babel基本使用详解
2017/02/17 Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
2017/03/25 Javascript
使用Dropzone.js上传的示例代码
2017/10/10 Javascript
vue在线动态切换主题色方案
2020/03/26 Javascript
vue+canvas实现移动端手写签名
2020/05/21 Javascript
[03:59]第二届DOTA2亚洲邀请赛选手传记-VGJ.rOtk
2017/04/03 DOTA
[01:35]2018年度CS GO最佳战队-完美盛典
2018/12/17 DOTA
浅谈Python单向链表的实现
2015/12/24 Python
Python模块结构与布局操作方法实例分析
2017/07/24 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
python multiprocessing模块用法及原理介绍
2019/08/20 Python
Python hashlib模块加密过程解析
2019/11/05 Python
python实现tail -f 功能
2020/01/17 Python
python用pip install时安装失败的一系列问题及解决方法
2020/02/24 Python
浅谈python累加求和+奇偶数求和_break_continue
2020/02/25 Python
基于python实现地址和经纬度转换
2020/05/19 Python
python利用faker库批量生成测试数据
2020/10/15 Python
美国最便宜的旅游网站:CheapTickets
2017/07/09 全球购物
怎么写有吸引力的自荐信
2013/11/17 职场文书
采购部部长岗位职责
2014/02/06 职场文书
园林技术个人的自我评价
2014/02/15 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
运动会宣传口号
2014/06/09 职场文书
五一促销活动总结
2014/07/01 职场文书
丧事答谢词
2015/01/05 职场文书
房地产销售员岗位职责
2015/04/11 职场文书
教师“一帮一”结对子活动总结
2015/05/07 职场文书
售房协议书范本
2015/08/11 职场文书
五年级作文之成长
2019/09/16 职场文书
开发微信小程序之WXSS样式教程
2022/04/18 HTML / CSS