import matplotlib.pyplot as plt
import numpy as np
n=11
X=np.arange(n)
#np.random.uniform从一个均匀分布[low,high)中随机采样,左闭右开,n个样本
Y1=(1-X/float(n))*np.random.uniform(0.5,1.0,n)
Y2=(1-X/float(n))*np.random.uniform(0.5,1.0,n)
#plt.bar创建柱状图x y是坐标 背景颜色 边缘颜色
plt.bar(X,Y1,facecolor='#9999ff',edgecolor='white')
#注意向下得柱状图是-Y2
plt.bar(X,-Y2,facecolor='#ff9999',edgecolor='white')
#zip语句称为序列解包即x只遍历X,y只遍历Y
for x,y in zip(X,Y1):
#创建text文本描述 位置 描述内容 ha=horizontal alignment水平对齐va=Vertical alignment垂直对齐
plt.text(x,y,'%.2f'%y,ha='center',va='bottom')
for x,y in zip(X,Y2):
plt.text(x,-y,'%.2f'%y,ha='center',va='top')
plt.xticks(())#不显示坐标数值
plt.yticks(())
plt.show()
matplotlib 柱状图 条形图
最新推荐文章于 2023-03-26 19:54:32 发布