我正在使用 Seaborn 的配对图:
g = sns.pairplot(df)
Run Code Online (Sandbox Code Playgroud)
是否可以在每个散点图上绘制恒等线?
定义一个函数,该函数将在当前轴上绘制恒等线,并将其应用到网格的非对角轴上,使用PairGrid.map_offdiag()。
例如:
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
def plot_unity(xdata, ydata, **kwargs):
mn = min(xdata.min(), ydata.min())
mx = max(xdata.max(), ydata.max())
points = np.linspace(mn, mx, 100)
plt.gca().plot(points, points, color='k', marker=None,
linestyle='--', linewidth=1.0)
ds = sns.load_dataset('iris')
grid = sns.pairplot(ds)
grid.map_offdiag(plot_unity)
Run Code Online (Sandbox Code Playgroud)
这使得我的设置如下图所示。您可以调整函数的 kwargsplot_unity以根据需要设置绘图样式。