正文
使用matplotlib绘图(二)之柱状图
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
# 使用matplotlib绘制柱状图
import numpy as np
import matplotlib.pyplot as plt# 设置全局字体,以支持中文
plt.rcParams['font.sans-serif'] = ['SimHei']
# 解决‘-’表现为方块的问题
plt.rcParams['axes.unicode_minus'] = Falsedata = {
'南京':(60, '#7199cf'),
'上海':(45, '#4fc4aa'),
'北京':(120, '#ffff10'),
}fig = plt.figure(figsize=(12,8))# 创建绘图区域
ax1 = fig.add_subplot(111)
ax1.set_title('柱状图')# 生成x轴的每个元素的位置,列表是[1,2,3]
xticks = np.arange(1,4)# 自定义柱状图的每个柱的宽度
bar_width = 0.5cities = data.keys()
values = [x[0] for x in data.values()]
colors = [x[1] for x in data.values()]# 画柱状图,设置柱的边缘为透明
bars = ax1.bar(xticks, values, width=bar_width, edgecolor='none')# 设置x,y轴的标签
ax1.set_xlabel('城市')
ax1.set_ylabel('数值')ax1.set_xticks(xticks)
ax1.set_xticklabels(cities)# 设置x,y轴的范围
ax1.set_xlim([0.5, 3.5])
ax1.set_ylim([0,125])# 给每一个bar分配颜色
for bar, color in zip(bars, colors):
bar.set_color(color)plt.savefig('bar.jpg')
plt.show()