python画条形图-python 中条形图绘制
一、条形图绘制参数详解
1、bar(left, height, width=0.8, bottom=None, color=None, edgecolor=None, linewidth=None, tick_label=None, xerr=None, yerr=None, label = None, ecolor=None, align, log=False, **kwargs)
x:传递数值序列,指定条形图中x轴上的刻度值
height:传递数值序列,指定条形图y轴上的高度
width:指定条形图的宽度,默认为0.8
bottom:用于绘制堆叠条形图
color:指定条形图的填充色
edgecolor:指定条形图的边框色
linewidth:指定条形图边框的宽度,如果指定为0,表示不绘制边框
tick_label:指定条形图的刻度标签
xerr:如果参数不为None,表示在条形图的基础上添加误差棒
yerr:参数含义同xerr
label:指定条形图的标签,一般用以添加图例
ecolor:指定条形图误差棒的颜色align:指定x轴刻度标签的对齐方式,默认为center,表示刻度标签居中对齐,如果设置为edge,则表示在每个条形的左下角呈现刻度标签
log:bool类型参数,是否对坐标轴进行log变换,默认为False
**kwargs:关键字参数,用于对条形图进行其他设置,如透明度等
1 #条形图的绘制--垂直条形图
2 #读入数据
3 GDP = pd.read_excel('Province GDP 2017.xlsx')4 '''
5 Province GDP6 北京 2.87 上海 3.018 广东 8.999 江苏 8.5910 重庆 1.9511 天津 1.8612 '''
13 #设置绘图风格(不妨使用R语言中的ggplot2风格)
14 plt.style.use('ggplot')15 #绘制条形图
16 plt.bar(x = range(GDP.shape[0]), #指定条形图x轴的刻度值
17 height = GDP.GDP, #指定条形图y轴的数值
18 tick_label = GDP.Province, #指定条形图x轴的刻度标签
19 color = 'steelblue', #指定条形图的填充色
20 width = 0.8
21 )22 #添加y轴的标签
23 plt.ylabel('GDP(万亿)')24 #添加条形图的标题
25 plt.title('2017年度6个省份GDP分布')26 #为每个条形图添加数值标签
27 for x,y inenumerate(GDP.GDP):28 plt.text(x,y+0.1,'%s' %round(y,1),ha='center')29 #显示图形
30 plt.show()
1 #条形图的绘制--水平条形图
2 #对读入的数据作升序排序
3 GDP.sort_values(by = 'GDP', inplace =True)4 #绘制条形图
5 plt.barh(y = range(GDP.shape[0]), #指定条形图y轴的刻度值
6 width = GDP.GDP, #指定条形图x轴的数值
7 tick_label = GDP.Province, #指定条形图y轴的刻度标签
8 color = 'steelblue', #指定条形图的填充色
9 )10 #添加x轴的标签
11 plt.xlabel('GDP(万亿)')12 #添加条形图的标题
13 plt.title('2017年度6个省份GDP分布')14 #为每个条形图添加数值标签
15 for y,x inenumerate(GDP.GDP):16 plt.text(x+0.1,y,'%s' %round(x,1),va='center')17 #显示图形
18 plt.show()
③绘制堆叠条形图
1 importpandas as pd2 importmatplotlib.pyplot as plt3 #条形图的绘制--堆叠条形图
4 #读入数据
5 Industry_GDP = pd.read_excel('Industry_GDP.xlsx')6 #取出四个不同的季度标签,用作堆叠条形图x轴的刻度标签
7 Quarters =Industry_GDP.Quarter.unique()8 #取出第一产业的四季度值
9 Industry1 = Industry_GDP.GPD[Industry_GDP.Industry_Type == '第一产业']10 #重新设置行索引
11 Industry1.index =range(len(Quarters))12 #取出第二产业的四季度值
13 Industry2 = Industry_GDP.GPD[Industry_GDP.Industry_Type == '第二产业']14 #重新设置行索引
15 Industry2.index =range(len(Quarters))16 #取出第三产业的四季度值
17 Industry3 = Industry_GDP.GPD[Industry_GDP.Industry_Type == '第三产业']18
19 #绘制堆叠条形图
20 #中文乱码和坐标轴负号的处理
21 plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']22 plt.rcParams['axes.unicode_minus'] =False23 #各季度下第一产业的条形图
24 plt.bar(x = range(len(Quarters)), height=Industry1, color = 'steelblue', label = '第一产业', tick_label =Quarters)25 #各季度下第二产业的条形图
26 plt.bar(x = range(len(Quarters)), height=Industry2, bottom = Industry1, color = 'green', label = '第二产业')27 #各季度下第三产业的条形图
28 plt.bar(x = range(len(Quarters)), height=Industry3, bottom = Industry1 + Industry2, color = 'red', label = '第三产业')29 #添加y轴标签
30 plt.ylabel('生成总值(亿)')31 #添加图形标题
32 plt.title('2017年各季度三产业总值')33 #显示各产业的图例
34 plt.legend(loc =2,fontsize = 'small')35 #显示图形
36 plt.show()
④水平交错条形图
1 #条形图的绘制--水平交错条形图
2 #导入第三方模块
3 importmatplotlib.pyplot as plt4 importnumpy as np5 importpandas as pd6 #读入数据
7 HuRun = pd.read_excel('HuRun.xlsx')8 #取出城市名称
9 Cities =HuRun.City.unique()10 #取出2016年各城市亿万资产家庭数
11 Counts2016 = HuRun.Counts[HuRun.Year == 2016]12 #取出2017年各城市亿万资产家庭数
13 Counts2017 = HuRun.Counts[HuRun.Year == 2017]14
15 #绘制水平交错条形图
16 bar_width = 0.4
17 plt.bar(x = np.arange(len(Cities)), height = Counts2016, label = '2016', color = 'steelblue', width =bar_width)18 plt.bar(x = np.arange(len(Cities))+bar_width, height = Counts2017, label = '2017', color = 'indianred', width =bar_width)19 #添加刻度标签(向右偏移0.225)
20 plt.xticks(np.arange(5)+0.2, Cities)21 #添加y轴标签
22 plt.ylabel('亿万资产家庭数')23 #添加图形标题
24 plt.title('近两年5个城市亿万资产家庭数比较')25 #添加图例
26 plt.legend()27 #显示图形
28 plt.show()
二、
①
1 #Pandas模块之垂直或水平条形图
2 #读入数据
3 GDP = pd.read_excel('Province GDP 2017.xlsx')4 #绘图(此时的数据集在前文已经按各省GDP做过升序处理)
5 GDP.GDP.plot(kind = 'bar', width = 0.8, rot = 0, color = 'steelblue', title = '2017年度6个省份GDP分布')6 #添加y轴标签
7 plt.ylabel('GDP(万亿)')8 #添加x轴刻度标签
9 plt.xticks(range(len(GDP.Province)), #指定刻度标签的位置
10 GDP.Province #指出具体的刻度标签值
11 )12 #为每个条形图添加数值标签
13 for x,y inenumerate(GDP.GDP):14 plt.text(x-0.1,y+0.2,'%s' %round(y,1),va='center')15 #显示图形
16 plt.show()
②
1 #Pandas模块之水平交错条形图
2 HuRun = pd.read_excel('HuRun.xlsx')3 HuRun_reshape = HuRun.pivot_table(index = 'City', columns='Year', values='Counts').reset_index()4 #对数据集降序排序
5 HuRun_reshape.sort_values(by = 2016, ascending = False, inplace =True)6 HuRun_reshape.plot(x = 'City', y = [2016,2017], kind = 'bar', color = ['steelblue', 'indianred'],7 rot = 0, #用于旋转x轴刻度标签的角度,0表示水平显示刻度标签
8 width = 0.8, title = '近两年5个城市亿万资产家庭数比较')9 #添加y轴标签
10 plt.ylabel('亿万资产家庭数')11 plt.xlabel('')12 plt.show()
③
1 #seaborn模块之垂直或水平条形图
2 #导入第三方模块
3 importseaborn as sns4
5 #读入数据
6 GDP = pd.read_excel('Province GDP 2017.xlsx')7 sns.barplot(y = 'Province', #指定条形图x轴的数据
8 x = 'GDP', #指定条形图y轴的数据
9 data = GDP, #指定需要绘图的数据集
10 color = 'steelblue', #指定条形图的填充色
11 orient = 'horizontal' #将条形图水平显示
12 )13 #重新设置x轴和y轴的标签
14 plt.xlabel('GDP(万亿)')15 plt.ylabel('')16 #添加图形的标题
17 plt.title('2017年度6个省份GDP分布')18 #为每个条形图添加数值标签
19 for y,x inenumerate(GDP.GDP):20 plt.text(x,y,'%s' %round(x,1),va='center')21 #显示图形
22 plt.show()
④
1 #读入数据
2 Titanic = pd.read_csv('titanic_train.csv')3 #绘制水平交错条形图
4 sns.barplot(x = 'Pclass', #指定x轴数据
5 y = 'Age', #指定y轴数据
6 hue = 'Sex', #指定分组数据
7 data = Titanic, #指定绘图数据集
8 palette = 'RdBu', #指定男女性别的不同颜色
9 errcolor = 'blue', #指定误差棒的颜色
10 errwidth=2, #指定误差棒的线宽
11 saturation = 1, #指定颜色的透明度,这里设置为无透明度
12 capsize = 0.05 #指定误差棒两端线条的宽度
13 )14 #添加图形标题
15 plt.title('各船舱等级中男女乘客的年龄差异')16 #显示图形
17 plt.show()
python画条形图-python 中条形图绘制相关推荐
- python怎么画人像_教你如何用Python画出心目中的自己
原标题:教你如何用Python画出心目中的自己 引言:人脸图像的生成在各个行业有着重要应用,例如刑事调查.人物设计.教育培训等.然而一幅逼真的人脸肖像,对于职业画家也要至少数小时才能绘制出来:对于从未 ...
- python画曲线-Python绘制各种简单优美曲线
原标题:Python绘制各种简单优美曲线 matplotlib是著名的Python绘图库,它提供了一整套绘图API,十分适合交互式绘图.,解决数据分析和可视化问题,其实也是Python的拿手好戏.另外 ...
- 用python画花瓣-Python:绘制樱花树
代码详解 (一)绘制画幕 首先绘制画幕,命令说明如下: screensize(width, height, bg=color):设置画幕大小及颜色 setup(p1, p2):设置画幕大小,当 p1. ...
- python画五角星-Python第八课 绘制五角星1.0
第八课 绘制五角星1.0 学习目标: 1. 了解并学会使用turtle库. 2. 复习while循环. 教学重难点: turtle库的使用. 学习内容: 案例2: 使用turtle 库在Python中 ...
- python画椭圆-Python 如何绘制椭圆?
在画图作业中遇到这个问题,总结一下: 通常怎么在python中画图? 数据的处理.分析和可视化已经成为 Python 近年来最重要的应用之一.Python 在数据可视化方面拥有很多功能强大的工具,Ma ...
- python画窗口_pyqt中图案如何画在子窗口上
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 基本思路是从QWidget派生出一个类重写paintEvent,在里面画图. UI部分代码是这样的 class Ui_Form(object): def ...
- python画散点图-Python:matplotlib绘制散点图
与线型图类似的是,散点图也是一个个点集构成的.但不同之处在于,散点图的各点之间不会按照前后关系以线条连接起来. 用plt.plot画散点图 奇怪,代码和前面的例子差不多,为什么这里显示的却是散点图而不 ...
- python画-使用python画个小猪佩奇的示例代码
基本原理 选好画板大小,设置好画笔颜色.粗细,定位好位置,依次画鼻子.头.耳朵.眼睛.腮.嘴.身体.手脚.尾巴,完事儿. 都知道,Turtle 是 Python 内置的一个比较有趣味的模块,俗称&qu ...
- python画曲线图-python画曲线
广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 桃心形曲线的方程如下 matlab绘制效果如下:? matlab程序如下. clc ...
- 用python画圣诞树-python圣诞树
广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! import termcolorimport randomimport timei ...
最新文章
- 网络框架 - 收藏集 - 掘金
- css3 media query orientation,CSS3之media query
- 高可用性(HA),会话复制,多VM Payara群集
- [Leetcode][第312题][JAVA][戳气球][动态规划][记忆化搜索]
- 【转】二、VTK用于QT的安装
- 计算差分方程的收敛点_数值计算(五十九)热传导方程组的差分数值求解
- [Python] L1-045 宇宙无敌大招呼-PAT团体程序设计天梯赛GPLT
- OLAP-druid-大数据Week13-DAY2-druid
- CopyToDataTable()、SetField()
- 浅谈C#的垃圾回收-关于GC、析构函数、Dispose、and Finalize asp.net GC之析构函数详解...
- 关于ODBC使用SQL语句和调用存储过程传递参数的使用方式说明
- Please either set ERLANG_HOME to point to your Erlang installation or place
- poker2的配置使用
- matlab ss2ss,Zemax+DDE+toolbox+for+Matlab 该工具箱可实现matlab编程和zemax通信 - 下载 - 搜珍网...
- Docker直接删除elasticsearch报错:Failed to obtain node locks
- GGS-DDU(最小树形图)
- Linux是什么?是谁开发的?
- 直观理解Beta分布
- Mac 安装第三方软件遇到的问题解决方案汇总
- ​一文梳理ICML 2022中图机器学习热点和趋势
热门文章
- tkinter的可视化拖拽工具_拒绝丑图表,教你用最简单的方法做最炫酷的可视化图表!附教程...
- C语言相反次序重新排序
- Linux C/C++开发环境搭建指针
- java actor和线程有什么区别_java – 在Akka Actors中使用OpenGL:保证单个线程用于特定的actor...
- stm32读取驾驶模拟器数据 stm32F407读取joystick数据
- com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field FileSize
- Google Python Style Guide
- NYOJ-86 找球号(一)
- CCF201712-2 游戏(100分)【模拟】
- Bailian2710 数制转换(POJ NOI0113-01)【进制】