设置窗口大小
fig = plt.figure(figsize=(16, 5))
设置子图
ax1 = fig.add_subplot(111)
准备数据和标签
data = [2806, 3155, 4768, 6321, 3260]
l=[i for i in range(5)]
s = float(sum(data))
percent = [round(data[0] / s * 100, 1),round(data[1] / s * 100, 1),
round(data[2] / s * 100, 1), round(data[3] / s * 100, 1), round(data[4] / s * 100, 1)]
labels = ['180-189', '190-199', '200-209', '210-219', '220-229']
画图
# 画柱状图
ax1.bar(range(len(data)), data, tick_label=labels, color="deepskyblue", alpha=0.4)
ax1.legend(loc=1)
ax1.set_ylim([0, 8000])
#设置y轴刻度间隔
y_major_locator = plt.MultipleLocator(2000)
ax1.yaxis.set_major_locator(y_major_locator)
ax1.set_xlabel('rpm')
ax1.set_ylabel('time')
#画折线图
ax2 = ax1.twinx()
ax2.set_ylim([0, 50])
ax2.set_ylabel('占比 %')
ax2.plot(percent, c="blue")
for i,(_x,_y) in enumerate(zip(l,percent)):
plt.text(_x-0.3, _y + 3, str(percent[i]) + "%",color='brown',fontsize=20,) #将数值显示在图形上
plt.show()