为 seaborn PairGrid 设置不同的轴范围

Setting different axis range for seaborn PairGrid

我正在使用 seaborn 绘图,我正在使用 seaborn.PairGrid 函数。这是创建 6 x 6 网格,其中对角线图是直方图,非对角线图是散点图。现在我想为每行图表设置不同的 y 范围,为图表的每一列设置不同的 x 范围。我搜索了很多堆栈交换但找不到实现此目的的方法。 Matplot 版本为 2.0.0seaborn 版本为 0.7.1

谢谢

您可以在 seaborn PairGridFacetGrid 的轴上使用 Axes.set_xlim()Axes.set_ylim() 方法。坐标轴可从 PairGrid 作为 .axes 属性获得。

import matplotlib.pyplot as plt
import seaborn as sns
iris = sns.load_dataset("iris")
g = sns.PairGrid(iris)
g = g.map_diag(plt.hist, edgecolor="k")
g = g.map_offdiag(plt.scatter, s=10)

g.axes[2,0].set_ylim(-10,10)
g.axes[0,1].set_xlim(-40,10)

plt.show()