python画柱状图并数值显示

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Author: yudengwu
# @Date  : 2020/6/12
import matplotlib; matplotlib.use('TkAgg')
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False
zhfont1 = matplotlib.font_manager.FontProperties(fname='C:\Windows\Fonts\simsun.ttc')



name_list=["空调","火炉","冰箱","其他电器"]
num_list = [244.39694,57.59,18.88,285.4701]#分解
num_list1 = [248.50326,56.595,17.913,283.33]#真实
x = list(range(len(num_list)))
width=0.3;#柱子的宽度
index=np.arange(len(name_list));
plt.bar(index,num_list,width,color='steelblue',tick_label = name_list,label='分解能耗')
plt.bar(index+width,num_list1,width,color='red',hatch='\\',label='真实能耗')
plt.legend(['分解能耗','真实能耗'],prop=zhfont1,labelspacing=1)

for a,b in zip(index,num_list):   #柱子上的数字显示
 plt.text(a,b,'%.2f'%b,ha='center',va='bottom',fontsize=7);
for a,b in zip(index+width,num_list1):
 plt.text(a,b,'%.2f'%b,ha='center',va='bottom',fontsize=7);

plt.title('26号用户2015/7/1 0:00:00到2015/7/12 23:00:00 电器能耗图')
plt.ylabel('kWh')
plt.legend()
plt.show()

在这里插入图片描述
来源: @Author: yudengwu

猜你喜欢

转载自blog.csdn.net/kobeyu652453/article/details/106717949