首页 > 解决方案 > 将 x=y 线添加到包含箱线图的绘图

问题描述

我正在尝试将 sns 箱线图与 x=y 线重叠

import seaborn as sns
import pandas

df = pandas.DataFrame(data=[[0,2,3,4],[33,12,34]],columns=['1','2','4','6'])
sns.boxplot(data=df)
sns.lineplot(x=df.columns.astype(int), y=df.columns.astype(int))

结果不是我预期的 在此处输入图像描述

如您所见,x=y 线没有从 (1,1) (2,2) (4,4) (6,6) 传递。

知道如何解决这个问题吗?

标签: pythonpandasplotseaborn

解决方案


IIUC,使用:

import seaborn as sns
import pandas
import numpy as np

df = pandas.DataFrame(data=[[0,2,3,4],[33,12,34]],columns=['1','2','4','6'])
sns.boxplot(data=df)
sns.lineplot(x=np.arange(len(df.columns)), y=df.columns.astype(int))

推荐阅读