matplotlib使用ax绘制子图,让plot和vlines绘制的子图的图例共同显示

l1= ax1.plot()
ax2 = ax1.twinx()
l2= ax2.plot()
l3 = ax1.vlines()
lines = l1 + l2 + [l3]
labels = [l.get_label() for l in lines]
plt.legend(lines, labels)

ax.vlines返回的对象类型和ax.plot返回的类型不一致,导致直接加和为lines报错,发现l1和l2均为list类型,给l3加上[],类型一致,达到预期效果。

你可能感兴趣的:(matplotlib,python,可视化)