我有一个数据框架,根据它的数据,我为它绘制线图。代码目前看起来就这么简单:
ax = sns.lineplot(x='datapoints', y='mean', hue='index', data=df)
sns.move_legend(ax, "upper left", bbox_to_anchor=(1, 1))
现在,实际上有一个名为“klinger”的列,它有8个不同的值,我想得到一个由8个子图(4x2)组成的图,所有子图都共享一个图例。
这很容易吗
目前,我通过过滤生成子dfs,只画八个图,然后用图形工具将它们切割在一起,但这不是解决方案
1条答案
按热度按时间myss37ts1#
你可以通过sns.relplot和kind ='line'得到你想要的东西。使用col ='klinger'来绘制尽可能多的子图,col_wrap=4将有助于获得4x2的形状,col_order=klinger_categories将选择您想要绘制的类别。