缩放pandas多重散点图的x坐标

时间:2017-09-02 18:36:54

标签: python pandas plot

我使用this答案中的配方创建了一个散点图,其中我的数据帧的一列为y,其他几个为不同的x。该答案的相关代码是:

ax1 = df.plot(kind='scatter', x='a', y='b', color='r')    
ax2 = df.plot(kind='scatter', x='c', y='d', color='g', ax=ax1)    
ax3 = df.plot(kind='scatter', x='e', y='f', color='b', ax=ax1)

问题是,我看起来像这样:

enter image description here

是否有一些优雅和简单的东西你可以添加到这个绘图命令,以便每个x列的数据将被缩放,使其占据整个轴?如果没有任何变量在下面有蜱,我不在乎,只是想直观地比较每个变量的y变化。

1 个答案:

答案 0 :(得分:2)

IIUC,您可以使用twiny

df = pd.DataFrame({'a':np.random.randint(1,10,20),
               'b':np.random.randint(1,500,20),
               'c':np.random.randint(20,50,20),
               'd':np.random.randint(1,500,20),
               'e':np.random.randint(20,50,20),
               'f':np.random.randint(1,500,20)})

ax2 = df.plot(kind='scatter', x='c', y='d', color='g')    
ax1 = ax2.twiny()
_ = df.plot(kind='scatter', x='a', y='b', color='r',ax=ax1)
_ = df.plot(kind='scatter', x='e', y='f', color='b', ax=ax2)

输出:

enter image description here