python

时间:2018-07-11 17:01:27

标签: python seaborn

我是python的新手,我试图弄清楚如何为对图设置单个轴的限制。我知道使用

pairplot.set(xlim=(0,100), ylim = (0,100))

将对图中的所有轴都设置为从0到100,但是我的一些变量的范围是0到300000,而其他变量的范围是080。我正在尝试避免使用自动缩放功能,因为我正在删除偶尔会有一些数据,但希望保留原始数据集的上下文。

例如,我得到类似下面的内容 example

2 个答案:

答案 0 :(得分:3)

您可以从其.axes属性访问PairGrid的轴。您可以像往常一样为每个轴设置极限。例如

g = sns.pairplot(data)
g.axes[0,2].set_xlim((0,40))
g.axes[1,2].set_xlim((-20,20))

答案 1 :(得分:0)

@ImportanceOfBeingErnes pairplot.set(xlim=(0,100), ylim = (0,100))的解决方案不适用于我。 (也许是版本问题?!) 甚至sns.plt.ylim(-30, 150)都有效。

解决方案1 ​​:我找到的第一个解决方案是:

plt.gca().set_ylim(-30, 150)

要在“双线图”(Seaborn)上设置y轴极限,范围为-30至150

解决方案2 :或者更优雅,第二种解决方案:

g.set(ylim=(-30,150))

也可以按以下形式使用:

g.set(ylim=(data.min().min(),data.max().max()))

完整示例:

g = sns.pairplot(df,
             kind='reg',
             x_vars=['nutrition-score-fr_100g'],
             y_vars=['sugars_100g])
g.set(ylim=(-30,150))

给我下面的对图(注意y极限):

enter image description here