来自多个数据帧的pairplot列由类别列中的类标记

ari*_*wan 5 python matplotlib dataframe pandas seaborn

我不知道该怎么做,但我相信这是可行的。我有三个dataframes具有相同列定义但来自不同年份的数据集。然后,我想对数字列进行配对,逐个列并绘制来自这些dfs的数据,适当地标记数据来自的集合。目标是了解按年份比较的每一列的数据模式。

我用这两个来说明我的意思,dataframes其中数据集分别df1来自年份2018df2年份2019

df1
          id      speed    accelaration      jerk      mode
0          1      1.94     -1.01             1.05      foot
1          1      0.93      0.04            -0.17      foot
2          3      0.50     -0.16             0.05      bike
3          3      0.57      0.05             0.19      bike
4          5      3.25     -0.13            -0.09      bus
5          5      0.50     -0.25             0.25      bus
6          5      0.25      0.10             0.25      bus

df2
          id    speed   accelaration      jerk      mode
0         17      1.5      0.00           0.00      foot
1         17      1.5      0.00          -0.30      foot
2         17      1.5     -0.30           0.06      foot
3         15     4.55      0.01          -0.36      bike
4         15     4.57     -0.35           0.02      bike
5         87     9.82     -0.29          -0.12      bus
6         87     8.65     -0.78           0.07      bus
Run Code Online (Sandbox Code Playgroud)

忽略该id列,我想得到一个类似于下图的结果(这只是我绘制的预期结果的说明):

在此处输入图片说明

简单地sns.pairplot()为每个调用两次df不会给出预期的结果,正如我所做的那样:

sns.pairplot(df1, vars=df1.columns[1:4], hue='mode')
sns.pairplot(df2, vars=df2.columns[1:4], hue='mode')
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

有人可以帮助描述如何从中获得预期的答案吗?