在不同行的绘图上绘制 Pandas 数据框中的列的简单方法?

Simple Method to Plot Columns in Pandas Dataframe on Different rows of plot?

是否有一种简单的方法可以使用共享的 X 轴在不同的行/图块上绘制所有列?我不想深入研究每个新图形的 matplotlib 子图;我正在寻找一些简单的东西,让我可以轻松地查看数据框中的所有数据。我觉得 Pandas 或 Seaborn 中缺少一个简单的标志或选项。

pandas 中的一个简单的 dataframe.plot() 给出了所有堆叠的变量:

我想要一个简单的方法(matplotlib 图构建的行不多)为数据框中的每个变量(列)创建一个新的方面,具有单独的 Y 轴,但共享 X 轴。

也许我在 ggplot2 中忽略了什么?

目标 - 像这样:

像这样?

df.plot(subplots=True, layout=(4,1))

它似乎生成了你想要的东西。

如果你想让标签在绘图之外,你可以在df.plot:

之后做一些处理
fig = plt.figure(figsize=(14,8))
ax = fig.add_subplot(111)
df = pd.DataFrame(np.random.uniform(size=(20,4)))
df.plot(ax=ax, subplots=True, layout=(4,1)) # ax=ax points df.plot to fig
for each in fig.axes: # You can still modify these axes!
    each.legend(loc='center left', bbox_to_anchor=(1, 0.5))

这会将绘图外的图例设置到右侧,与设置任何其他图例的过程相同。