matplotlib基础绘图命令之bar的使用方法


Posted in Python onAugust 13, 2020

在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下

在matplotlib中,bar命令用于绘制柱状图,基本用法如下

plt.bar(x = [1, 2, 3, 4], height = [4, 2, 3, 1])

输出结果如下

matplotlib基础绘图命令之bar的使用方法

参数x的值作为x轴坐标,height的值作为y轴坐标。除了这两个基本参数外,bar命令常用的还有以下参数

1. width, 柱子的宽度,即在x轴上的长度,默认是0.8

2. color, 柱子的填充色

3. edgecolor, 柱子边框的颜色,默认为None

4. linewidth, 柱子边框的宽度,默认为0,表示没有边框

5. yerr,指定误差值的大小, 用于在柱子上添加误差线

6. ecolor, 表示errorbar color, 误差线的颜色

7. bottom, 柱子底部的baseline, 默认为0

各个参数设置的示例如下

plt.bar(x = [1, 2, 3, 4], height = [4, 2, 3, 1], width = 0.8, edgecolor = 'black', linewidth = 2, align = 'center', color = 'g', yerr = 0.5, ecolor = 'r')

输出结果如下

matplotlib基础绘图命令之bar的使用方法

柱状图还可以有很多的变种,通过barh命令,可以绘制水平方向的柱状图,用法如下

plt.barh(y = [1, 2, 3, 4], width = [4, 2, 3, 1])

输出结果如下

matplotlib基础绘图命令之bar的使用方法

在单一柱状图的基础上,通过叠加可以实现以下两种柱状图

1. 堆积柱状图

代码如下

plt.bar(x = [1, 2, 3, 4], height = [4, 3, 2, 1], label = 'sampleA')
plt.bar(x = [1, 2, 3, 4], height = [4, 3, 2, 1], bottom = [4, 3, 2, 1], label = 'sampleB')
plt.legend()

核心是通过将第一组柱子的高度作为第二组柱子的底部,即bottom参数,从而实现堆积的效果,输出结果如下

matplotlib基础绘图命令之bar的使用方法

2. 分组柱状图

代码如下

width = 0.4
plt.bar(x = np.array([1, 2, 3, 4]) - width / 2, height = [4, 3, 2, 1], width = width, label = 'sampleA')
plt.bar(x = np.array([1, 2, 3, 4]) + width / 2, height = [1, 2, 3, 4], width = width, label = 'sampleB')
plt.legend()

核心是根据宽度的值,手动计算柱子的中心坐标,然后自然叠加就可以形成水平展开的分组柱状图,输出结果如下

matplotlib基础绘图命令之bar的使用方法

matplotlib并不像R包ggplot2那样,提供了一步到位的接口,而是通过叠加组合最大程度的保留了灵活性,通过一行行绘图代码的叠加来实现复杂图表。

到此这篇关于matplotlib基础绘图命令之bar的使用方法的文章就介绍到这了,更多相关matplotlib bar使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用 Python 获取 Linux 系统信息的代码
Jul 13 Python
TensorFlow在MAC环境下的安装及环境搭建
Nov 14 Python
python Django里CSRF 对应策略详解
Aug 05 Python
PyTorch中Tensor的拼接与拆分的实现
Aug 18 Python
在python中利用try..except来代替if..else的用法
Dec 19 Python
python3.8下载及安装步骤详解
Jan 15 Python
Python使用socket模块实现简单tcp通信
Aug 18 Python
利用python+request通过接口实现人员通行记录上传功能
Jan 13 Python
Python3.9.1中使用split()的处理方法(推荐)
Feb 07 Python
python Protobuf定义消息类型知识点讲解
Mar 02 Python
pandas取dataframe特定行列的实现方法
May 24 Python
基于PyQt5制作一个群发邮件工具
Apr 08 Python
Python logging模块原理解析及应用
Aug 13 #Python
matplotlib基础绘图命令之imshow的使用
Aug 13 #Python
使用jupyter notebook运行python和R的步骤
Aug 13 #Python
matplotlib基础绘图命令之errorbar的使用
Aug 13 #Python
Python如何读写CSV文件
Aug 13 #Python
区分python中的进程与线程
Aug 13 #Python
python判断一个变量是否已经设置的方法
Aug 13 #Python
You might like
第一节--面向对象编程
2006/11/16 PHP
php程序之die调试法 快速解决错误
2009/09/17 PHP
php+mysql事务rollback&commit示例
2010/02/08 PHP
Mysql中分页查询的两个解决方法比较
2013/05/02 PHP
thinkPHP学习笔记之安装配置篇
2015/03/05 PHP
PHP数组相关函数汇总
2015/03/24 PHP
数据结构之利用PHP实现二分搜索树
2020/10/25 PHP
Prototype源码浅析 String部分(一)之有关indexOf优化
2012/01/15 Javascript
地址栏传递中文参数乱码在js里用escape转码
2013/08/28 Javascript
如何创建一个JavaScript弹出DIV窗口层的效果
2013/09/25 Javascript
jquery验证手机号是否正确实例讲解
2015/11/17 Javascript
jQuery实现获取table表格第一列值的方法
2016/03/01 Javascript
Bootstrap表格和栅格分页实例详解
2016/05/20 Javascript
jquery的checkbox,radio,select等方法小结
2016/08/30 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
2016/11/02 Javascript
js 能实现监听F5页面刷新子iframe 而父页面不刷新的方法
2016/11/09 Javascript
vue服务端渲染缓存应用详解
2018/09/12 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
VUE 动态组件的应用案例分析
2019/12/02 Javascript
jQuery实现中奖播报功能(让文本滚动起来) 简单设置数值即可
2020/03/20 jQuery
跟老齐学Python之不要红头文件(1)
2014/09/28 Python
Python 冒泡,选择,插入排序使用实例
2015/02/05 Python
python基础之包的导入和__init__.py的介绍
2018/01/08 Python
Python中文件的读取和写入操作
2018/04/27 Python
Django Rest framework之认证的实现代码
2018/12/17 Python
python  logging日志打印过程解析
2019/10/22 Python
Python __slots__的使用方法
2020/11/15 Python
惊艳的手工时装首饰:Migonne Gavigan
2018/02/23 全球购物
综合测评自我鉴定
2013/10/08 职场文书
教师辞职书范文
2015/02/26 职场文书
2015年党员发展工作总结
2015/05/13 职场文书
羊脂球读书笔记
2015/06/30 职场文书
初中毕业感言300字
2015/07/31 职场文书
教导处教学工作总结
2015/08/12 职场文书
导游词之金鞭溪风景区
2019/09/12 职场文书
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python