Matplotlib pyplot并排放置两个情节

时间:2018-09-06 02:53:33

标签: python pandas dataframe matplotlib

嗨,我正在尝试与plt并排放置两个地块,并在这里尝试了建议:Trying to position subplots next to each other

但是我正在通过使用熊猫的默认功能进行绘图

myDataFrame.plot(kind='scatter' x='xcol', y='ycol') 

所以我不能像plt.subplot(2, 1, 2)那样做myDataFrame.subplot(2,1,2)(很明显)

然后做

plt.subplot(1, 2, 1)
myDataFrame.plot(kind='scatter' x='xcol', y='ycol') 

plt.subplot(1, 2, 2)
myDataFrame.plot(kind='scatter' x='xcol', y='ycol')

只在我想要的情节之前添加两个情节

关于如何仍然可以使用myDataframe.plot(kind='scatter')并将它们中的两个并排放置的任何想法

2 个答案:

答案 0 :(得分:1)

似乎DataFrame.plot接受了pyplot轴https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.plot.htmlax自变量。 试试:

ax = plt.subplot(1, 2, 1)
myDataFrame.plot(kind='scatter' x='xcol', y='ycol', ax=ax) 

答案 1 :(得分:1)

如果您仍在寻找它,这是一个最小的工作答案(不包括进口商品)

fig, ax = plt.subplots(ncols=2, figsize=(10,4))

df = pd.DataFrame([[5.1, 3.5, 0], [4.9, 3.0, 0], [7.0, 3.2, 1],
                [6.4, 3.2, 1], [5.9, 3.0, 2], [7.1, 4.5, 2]],
                columns=['X', 'Y', 'value'])
df.plot.scatter(x='X', y='Y', c='red', ax=ax[0])
df.plot.scatter(x='X', y='Y', c='red', ax=ax[1])

输出

enter image description here