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中关键字is与==的区别简述
Jul 31 Python
python实现将文本转换成语音的方法
May 28 Python
使用Python的Django框架结合jQuery实现AJAX购物车页面
Apr 11 Python
Python实现简单的多任务mysql转xml的方法
Feb 08 Python
让python 3支持mysqldb的解决方法
Feb 14 Python
python anaconda 安装 环境变量 升级 以及特殊库安装的方法
Jun 21 Python
python中使用print输出中文的方法
Jul 16 Python
python用post访问restful服务接口的方法
Dec 07 Python
Django 配置多站点多域名的实现步骤
May 17 Python
Python Collatz序列实现过程解析
Oct 12 Python
Tensorflow--取tensorf指定列的操作方式
Jun 30 Python
python获取本周、上周、本月、上月及本季的时间代码实例
Sep 08 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
火车采集器 免费版使出收费版本功能实现原理
2009/09/17 PHP
采用memcache在web集群中实现session的同步会话
2014/07/05 PHP
php通过ksort()函数给关联数组按照键排序的方法
2015/03/18 PHP
laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
2017/10/12 PHP
学习ExtJS border布局
2009/10/08 Javascript
js统计录入文本框中字符的个数并加以限制不超过多少
2014/05/23 Javascript
深入理解JavaScript系列(48):对象创建模式(下篇)
2015/03/04 Javascript
再JavaScript的jQuery库中编写动画效果的指南
2015/08/13 Javascript
编写高性能Javascript代码的N条建议
2015/10/12 Javascript
javascript跨域的方法汇总
2015/10/23 Javascript
JS实现快速的导航下拉菜单动画效果附源码下载
2016/11/01 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
EasyUI在Panel上动态添加LinkButton按钮
2017/08/11 Javascript
微信小程序封装的HTTP请求示例【附升级版】
2019/05/11 Javascript
vue实现输入一位数字转汉字功能
2019/12/13 Javascript
VUE中使用HTTP库Axios方法详解
2020/02/05 Javascript
ES6 async、await的基本使用方法示例
2020/06/06 Javascript
Python 执行字符串表达式函数(eval exec execfile)
2014/08/11 Python
Python设计模式中单例模式的实现及在Tornado中的应用
2016/03/02 Python
python urllib爬取百度云连接的实例代码
2017/06/19 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
python使用adbapi实现MySQL数据库的异步存储
2019/03/19 Python
Python中的引用和拷贝实例解析
2019/11/14 Python
python 使用xlsxwriter循环向excel中插入数据和图片的操作
2021/01/01 Python
美国大尺码女装零售商:TORRID
2016/10/01 全球购物
Boda Skins皮衣官网:奢侈皮夹克,全球配送
2016/12/15 全球购物
德国最大的网上足球商店:11teamsports
2019/09/11 全球购物
怎么写有吸引力的自荐信
2013/11/17 职场文书
应届毕业生个人求职自荐信
2014/01/06 职场文书
党的群众路线教育实践活动党员个人剖析材料
2014/10/08 职场文书
2015年大学迎新晚会总结
2015/07/16 职场文书
初中数学课堂教学反思
2016/02/17 职场文书
创业计划书之奶茶店开店方案范本!
2019/08/06 职场文书
Java 垃圾回收超详细讲解记忆集和卡表
2022/04/08 Java/Android
python内置模块之上下文管理contextlib
2022/06/14 Python