标签:GDP plt 标签 matplotlib 绘图 模块 2016 条形图
one
In [3]:
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
饼图绘制¶
In [4]:
# 解决中文乱码问题
plt.rcParams['font.sans-serif'] = ['SimHei']
# 构造数据
edu = [0.2515, 0.3234, 0.3336, 0.0367, 0.0057]
labels = ['中专', '大专', '本科', '硕士', '其他']
explode = [0,0.1,0,0,0]
plt.pie(x=edu,#绘图数据
labels = labels,# 添加标签
autopct = '%.2f%%',#设置百分比格式,这里保留两位小数
explode = explode,#呈现爆炸式突出 离圆心点位置
)
# %matplotlib
plt.show()
'''
默认情况下,使用matplotlib绘制图片是嵌入式展示的,可以设置弹窗式展示。
使用步骤:代码输入 %matplotlib,运行没反应再注释掉运行就有反应了。
'''
Out[4]:
'\n默认情况下,使用matplotlib绘制图片是嵌入式展示的,可以设置弹窗式展示。 \n使用步骤:代码输入 %matplotlib,运行没反应再注释掉运行就有反应了。\n'
条形图¶
In [5]:
# 文件中读取数据
GDP = pd.read_excel(r'GDP1.xlsx')
GDP.head()
Out[5]:
| Province | GDP |
0 |
北京 |
2.80 |
1 |
上海 |
3.01 |
2 |
广东 |
8.99 |
3 |
江苏 |
8.59 |
4 |
重庆 |
1.95 |
In [11]:
# 绘制条形图
plt.bar(x=range(GDP.shape[0]),# 指定条形图轴的刻度值
height = GDP['GDP'], #指定条形图的y轴
tick_label = GDP.Province, # 指定条形图x轴的刻度标签
color = 'red',# 指定条形图的填充色
edgecolor = 'black', # 指定条形图的边框色
)
# 给y轴添加一个标签注释
plt.ylabel('GDP(万亿)')
# 添加条形图的标题
plt.title('2017年度6个省份GDP分布')
##########################################
# 为每个条形图添加数值标签
for x, y in enumerate(GDP.GDP):
plt.text(x, y+0.1, '%s'%round(y,1), ha='center')
##########################################
plt.show()
In [12]:
# 水平条形图
# 对读入数据做升序排序
GDP.sort_values(by = 'GDP', inplace = True)
"""
ascending 决定升序还是降序
"""
In [24]:
# 绘制水平条形图
plt.barh(y=range(GDP.shape[0]),# 指定条形图轴的刻度值
width = GDP['GDP'], #指定条形图的y轴
tick_label = GDP.Province, # 指定条形图x轴的刻度标签
color = 'green',# 指定条形图的填充色
edgecolor = 'black', # 指定条形图的边框色
)
# 给x轴添加一个标签注释
plt.xlabel('GDP(万亿)')
# 添加条形图的标题
plt.title('2017年度6个省份GDP分布')
# 为每个条形图添加数值标签
for y, x in enumerate(GDP.GDP):
plt.text(x+0.3, y, '%s'%round(x,2), ha='center')
plt.show()
In [45]:
# 交叉条形图
HuaRen = pd.read_excel(r'Count1.xlsx')
HuaRen.head()
Out[45]:
| Year | Counts | City |
0 |
2016 |
15600 |
北京 |
1 |
2016 |
12700 |
上海 |
2 |
2016 |
11300 |
香港 |
3 |
2016 |
4270 |
深圳 |
4 |
2016 |
3620 |
广州 |
In [46]:
# Pandas模块之水平交错条形图
# pivot_table 数据透视表
HuaRen_reshape = HuaRen.pivot_table(
index = 'City',
columns = 'Year',
values = 'Counts').reset_index()
HuaRen_reshape
Out[46]:
Year | City | 2016 | 2017 | 2107 |
0 |
上海 |
12700.0 |
14700.0 |
NaN |
1 |
北京 |
15600.0 |
19600.0 |
NaN |
2 |
广州 |
3620.0 |
NaN |
8620.0 |
3 |
深圳 |
4270.0 |
NaN |
6270.0 |
4 |
香港 |
11300.0 |
NaN |
13300.0 |
In [50]:
#对数据集降序排序
HuaRen_reshape.sort_values(by = 2016, ascending = False, inplace = True)
HuaRen_reshape.plot(
x='City',
y = [2016,2107, 2017],
kind = 'bar',
color = ['steelblue', 'indianred', 'yellow'],
# 用于旋转x轴刻度标签的角度,0表示水平显示刻度标签
rot = 0,
width = 0.8,
title = '近两年内5个城市亿万资产家庭数比较',
)
# 添加y轴标签
plt.ylabel('亿万资产家庭数')
# 将x轴标签去除
plt.xlabel('')
plt.show()
直方图¶
In [ ]:
标签:GDP,
plt,
标签,
matplotlib,
绘图,
模块,
2016,
条形图
From: https://www.cnblogs.com/bjyxxc/p/17846528.html