python绘图
2021-06-10 18:04
标签:opened title 数据 text 河北 sans pyplot size 参数 一个案例 python绘图 标签:opened title 数据 text 河北 sans pyplot size 参数 原文地址:https://www.cnblogs.com/xdd1997/p/14246493.htmlimport matplotlib.pyplot as plt
# 数据处理
data = [
[‘01/01‘,‘0‘,‘0‘],
[‘01/02‘,‘1‘,‘0‘],
[‘01/03‘,‘4‘,‘13‘],
[‘01/04‘,‘14‘,‘30‘],
[‘01/05‘,‘20‘,‘43‘],
[‘01/06‘,‘51‘,‘69‘]
]
X0=[]
Y1=[]
Y2=[]
for ii in data:
X0.append(ii[0])
Y1.append(int(ii[1]))
Y2.append(int(ii[2]))
# 绘图设置
plt.rcParams[‘font.sans-serif‘] = [‘SimHei‘]
plt.rcParams[‘axes.unicode_minus‘] = False
# 绘图
fig, ax = plt.subplots()
rects1 = ax.bar(x=X0, height=Y1, width=0.45, color=‘red‘, label="确诊",alpha=0.8)
rects2 = ax.bar(x=X0, height=Y2, width=0.45, color=‘green‘, label="无症状", bottom=Y1,alpha=0.8)
# 在柱状图上显示具体数值, ha参数控制水平对齐方式, va控制垂直对齐方式
for x, y in enumerate(Y1):
plt.text(x, y/2, ‘%s‘ % y, ha=‘center‘, va=‘bottom‘,fontsize=‘12‘)
Y3 = []
for ii in range(len(Y1)):
Y3.append((Y1[ii]+Y2[ii]))
print(Y3)
for x, y in enumerate(Y3):
plt.text(x, y + 1, ‘%s‘ % y, ha=‘center‘, va=‘bottom‘,fontsize=‘12‘)
# y轴范围
maxN = max(Y1)+max(Y2)
plt.ylim(0, maxN*1.4)
plt.xlabel("日期")
plt.ylabel("人数")
ax.set_title(‘河北近日新冠新增‘)
# X轴标签
ax.set_xticklabels(X0)
plt.legend()
plt.savefig(‘2.tif‘, dpi=300)
plt.show()
下一篇:如何在Java中填充字符串?