一个x轴,左边一个y轴,右边一个y轴

时间:2016-02-29 16:03:38

标签: python matplotlib

使用pandas,可以在一个图上绘制2个系列,其中包括:

Y1.plot()
Y2.plot(secondary_y=True)

它给出了:

  • 一个常见的x轴
  • Y1
  • 左侧的一个y轴
  • Y2
  • 右侧的一个y轴

如何仅对matplotlib执行相同操作(不使用pandas)?

enter image description here

1 个答案:

答案 0 :(得分:2)

您可以使用twinx。请参阅example here

简单地:

import matplotlib.pyplot as plt

fig,ax1 = plt.subplots(1)

ax2 = ax1.twinx()

ax1.plot([0,1,2,3,4],[0,1,2,3,4],'ro-')
ax2.plot([0,1,2,3,4],[400,300,200,100,0],'b-')

plt.show()

enter image description here

编辑,您可以在没有面向对象的方法(fig,ax等)的情况下实现此目的。在第一个绘图功能之后调用plt.twinx将创建新的双轴,随后的绘图事件将绘制在

import matplotlib.pyplot as plt

plt.plot([0,1,2,3,4],[0,1,2,3,4],'ro-')
plt.twinx()
plt.plot([0,1,2,3,4],[400,300,200,100,0],'b-')

这确实消除了OO方法的所有好处,并且不太清楚您将要绘制哪些轴等等。