Matplotlib系列(四)--plt.bar与plt.barh条形图
(一)竖条条形图
参数说明
参数 | 说明 | 类型 |
x | x坐标 | int,float |
height | 条形的高度 | int,float |
width | 线条的宽度 | 0~1,默认是0.8 |
botton | 条形的起始位置 | 也就是y轴的起始坐标 |
align | 条形的中心位置 | “center”,"lege"边缘 |
color | 条形的颜色 | “r”,“b”,“g”,“#123465",默认的颜色是“b” |
edgecolor | 边框的颜色 | 同上 |
linewidth | 边框的宽度 | 像素,默认无,int |
tick_label | 下标的标签 | 可以是元组类型的字符组合 |
log | y轴使用科学计算法表示 | bool |
orientation | 是竖直条还是水平条 | 竖直:"vertical",水平条:"horizontal" |
颜色的参数说明
字符 | 颜色 |
'b' | blue |
'g' | green |
'r' | red |
'c' | cyan 青色 |
'm' | magenta 平红 |
'y' | yellow |
'k' | black |
'w' | white |
- import numpy as np
- import matplotlib.pyplot as plt
- # 将全局的字体设置为黑体
- plt.rcParams['font.family'] = 'SimHei'
- # 数据
- N = 5
- y = [20, 10, 30, 25, 15]
- x = np.arange(N)
- # 绘图 x x轴, height 高度, 默认:color="blue", width=0.2 线条的宽度 默认0.8
- p1 = plt.bar(x, height=y, width=0.5)
- # 展示图形
- plt.show()
输出效果:
(二) 水平条形图
1.使用bar绘制:注意:需要把:orientation="horizontal",然后x,与y的数据交换,再添加bottom=x,即可。
- """
- 水平条形图,需要修改以下属性
- orientation="horizontal"
- """
- import numpy as np
- import matplotlib.pyplot as plt
- # 数据
- N = 5
- x = [20, 10, 30, 25, 15]
- y = np.arange(N)
- # 绘图 x= 起始位置, bottom= 水平条的底部(左侧), y轴, height 水平条的宽度, width 水平条的长度
- p1 = plt.bar(x=0, bottom=y, height=0.5, width=x, orientation="horizontal")
- # 展示图形
- plt.show()
(2)使用barh()时,bottom改为left, 然后宽变高,高变宽。
- """
- 水平条形图,需要以下属性
- orientation="horizontal"
- """
- import numpy as np
- import matplotlib.pyplot as plt
- # 数据
- N = 5
- x = [20, 10, 30, 25, 15]
- y = np.arange(N)
- # 绘图 y= y轴, left= 水平条的底部, height 水平条的宽度, width 水平条的长度
- p1 = plt.barh(y, left=0, height=0.5, width=x)
- # 展示图形
- plt.show()
(三)、复杂一些的条形图
1.并列的条形图
注意事项:我们再同一张画布,画两组条形图,并且紧挨着就时并列条形图。改变x的位置。
- import numpy as np
- import matplotlib.pyplot as plt
- # 数据
- x = np.arange(4)
- Bj = [52, 55, 63, 53]
- Sh = [44, 66, 55, 41]
- bar_width = 0.3
- # 绘图 x 表示 从那里开始
- plt.bar(x, Bj, bar_width)
- plt.bar(x+bar_width, Sh, bar_width, align="center")
- # 展示图片
- plt.show()
(2) 添加图例信息
- 对于图例:先可选属性里添加label=“”,标签再使用plt.lengd()显示。
- 对于数据的标签使用任意方向的标签来标注,再由x,y数据确定坐标。
- tick_label=str,用来显示自定义坐标轴
- """
- 默认的是竖值条形图
- """
- import numpy as np
- import matplotlib.pyplot as plt
- # 将全局的字体设置为黑体
- plt.rcParams['font.family'] = 'SimHei'
- # 数据
- N = 5
- y = [20, 10, 30, 25, 15]
- x = np.arange(N)
- # 添加地名坐标
- str1 = ("北京", "上海", "武汉", "深圳", "重庆")
- # 绘图 x x轴, height 高度, 默认:color="blue", width=0.8
- p1 = plt.bar(x, height=y, width=0.5, label="城市指标", tick_label=str1)
- # 添加数据标签
- for a, b in zip(x, y):
- plt.text(a, b + 0.05, '%.0f' % b, ha='center', va='bottom', fontsize=10)
- # 添加图例
- plt.legend()
- # 展示图形
- plt.show()
Matplotlib系列(四)--plt.bar与plt.barh条形图的更多相关文章
- 4.4Python数据处理篇之Matplotlib系列(四)---plt.bar()与plt.barh条形图
目录 目录 前言 (一)竖值条形图 (二)水平条形图 1.使用bar()绘制: 2.使用barh()绘制: (三)复杂的条形图 1.并列条形图: 2.叠加条形图: 3.添加图例于数据标签的条形图: 目 ...
- 4.5Python数据处理篇之Matplotlib系列(五)---plt.pie()饼状图
目录 目录 前言 (一)简单的饼状图 (二)添加阴影和突出部分 (三)显示图例和数据标签: 目录 前言 饼状图需要导入的是: plt.pie(x, labels= ) (一)简单的饼状图 (1)说明: ...
- 4.2Python数据处理篇之Matplotlib系列(二)---plt.scatter()散点图
目录 目录 前言 (一)散点图的基础知识 (二)相关性的举例 ==1.正相关== ==1.负相关== ==1.不相关== (三)实战项目以一股票的分析 目录 前言 散点图是用于观测数据的相关性的,有正 ...
- Difference between plt.draw() and plt.show() in matplotlib
Difference between plt.draw() and plt.show() in matplotlib down voteaccepted plt.show() will display ...
- 4.7Python数据处理篇之Matplotlib系列(七)---matplotlib原理分析
目录 目录 前言 (一)总框架分析 (二)函数式的绘图 1.说明: 2.函数绘图的缺优点 3.绘图类的函数 4.操作类的函数 5.例子: (三)面向对象式的绘图 1.基本概念 2.基本对象 3.面向对 ...
- Paddle Graph Learning (PGL)图学习之图游走类模型[系列四]
Paddle Graph Learning (PGL)图学习之图游走类模型[系列四] 更多详情参考:Paddle Graph Learning 图学习之图游走类模型[系列四] https://aist ...
- tkinter内嵌Matplotlib系列(二)之函数曲线绘制
目录 目录 前言 (一)对matplotlib画布的封装: (二)思路分析: 1.需求说明: 2.框架的设置: 3.文件说明: (三)各文件的源代码 1.main.py 2.widget.py 3.f ...
- python Matplotlib 系列教程(三)——绘制直方图和条形图
在本章节我们将学习如何绘制条形图和直方图 条形图与直方图的区别:首先,条形图是用条形的长度表示各类别频数的多少,其宽度(表示类别)则是固定的: 直方图是用面积表示各组频数的多少,矩形的高度表示每一组的 ...
- matplotlib系列——条形图
import matplotlib.pyplot as plt import numpy as np import matplotlib x = ["战狼2","激情8& ...
随机推荐
- mysql恢复备份导出
MySQL-5.7 备份与恢复 一.备份分类 按介质分类: 物理备份指通过拷贝数据库文件方式完成备份,适用于数据库很大,数据重要且需要快速恢复的数据库. 逻辑备份指通过备份数据库的逻辑结构和数据内 ...
- UVa 11582 Colossal Fibonacci Numbers! 紫书
思路是按紫书上说的来. 参考了:https://blog.csdn.net/qwsin/article/details/51834161 的代码: #include <cstdio> # ...
- K近邻实现
1 定义画图函数,用来可视化数据分布 (注:jupyternotebook来编写的代码) import matplotlib.pyplot as plt import numpy as np %con ...
- Struts2异常:HTTP Status 404 - /Struts2/book/addBook.action
HTTP Status 404 - /Struts2/book/addBook.action 如果在Struts2的框架中访问路径出现了这个错误,可能存在的原因有如下的两个: 1. 路径写错,也就是a ...
- linux中编写查看内存使用率的shell脚本,并以高亮颜色输出结果
编辑脚本内容: #!/bin/bash MEMUSER=`free -m|grep -i mem|awk '{print $3/$2*100"%"}'` echo -e " ...
- PHP 中的 $this, static , self ,parent 等等关键字的总结
先说结论: self 和 __CLASS__,都是对当前类的静态引用,取决于定义当前方法所在的类.也就是说,self 写在哪个类里面, 它引用的就是谁.$this 指向的是实际调用时的对象,也就是说, ...
- Maven-Eclipse使用maven创建HelloWorld Java项目,maven常用的命令解析
1.开发过程常用的maven命令有: mvn clean mvn compile mvn test mvn package mvn install mvn deploy 2.mvn clean:清理t ...
- ES6扩展运算符(三点符号), 解构
http://www.cnblogs.com/chrischjh/p/4848934.html
- github廖雪峰git
gitHub地址: https://github.com/DickyQie/Tool-use/tree/git-learning-document
- MiniUI学习笔记1-新手必读
1.mini的全局方法 2.Ajax jQuery 拥有完整的 Ajax 兼容套件.其中的函数和方法允许我们在不刷新浏览器的情况下从服务器加载数据. 详细jQuery Ajax教程,可参考这里. 3. ...