barh()表示绘制水平方向的条形图,在plt.bar_label中,通过labels=None/label来控制标签的输出,通过set_yticklabels来控制y坐标轴标签的输出。
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
#数据
name=['1','2','3','4','5']
label=['±0.71','±0.25','±0.16','±0.70','±0.72']
colleges=[91,34,200,100,150]
yname=['Jim','Slim','Harry','Dick','Tom']
#图像绘制
fig,ax=plt.subplots()
b=ax.barh(range(len(name)),colleges,color='#6699CC')
plt.bar_label(b, label_type='edge',labels=label)
plt.title('How fast do you want to go today')
#设置Y轴刻度线标签
ax.set_yticks(range(len(name)))
#font=FontProperties(fname=r'/Library/Fonts/Songti.ttc')
ax.set_yticklabels(yname)
plt.xlabel('Performance')
plt.show()
最终画图结果如下: