seaborn.objects.Jitter#

class seaborn.objects.Jitter(width=<default>, x=0, y=0, seed=None)#

沿着一个或两个轴进行随机位移以减少过度绘制。

参数:
widthfloat

抖动的幅度,相对于标记宽度,沿着方向轴。如果没有提供,默认值为0,当 xy 设置时,否则默认情况下会应用少量抖动。

xfloat

抖动的幅度,以数据单位表示,沿着 x 轴。

yfloat

抖动的幅度,以数据单位表示,沿着 y 轴。

示例

在不使用任何参数的情况下使用时,会沿着方向轴应用少量抖动

(
    so.Plot(penguins, "species", "body_mass_g")
    .add(so.Dots(), so.Jitter())
)
../_images/objects.Jitter_1_0.png

The width 参数控制抖动的幅度,相对于标记之间的间距

(
    so.Plot(penguins, "species", "body_mass_g")
    .add(so.Dots(), so.Jitter(.5))
)
../_images/objects.Jitter_3_0.png

The width 参数始终应用于方向轴,因此抖动的方向会随着方向而改变

(
    so.Plot(penguins, "body_mass_g", "species")
    .add(so.Dots(), so.Jitter(.5))
)
../_images/objects.Jitter_5_0.png

因为 width 抖动是相对的,所以它可以在方向轴是数字时使用,无需进一步调整

(
    so.Plot(penguins["body_mass_g"].round(-3), penguins["flipper_length_mm"])
    .add(so.Dots(), so.Jitter())
)
../_images/objects.Jitter_7_0.png

width 相反, xy 参数始终指的是特定轴,并以数据单位控制抖动

(
    so.Plot(penguins["body_mass_g"].round(-3), penguins["flipper_length_mm"])
    .add(so.Dots(), so.Jitter(x=100))
)
../_images/objects.Jitter_9_0.png

Both x and y can be used in a single transform

(
    so.Plot(
        penguins["body_mass_g"].round(-3),
        penguins["flipper_length_mm"].round(-1),
    )
    .add(so.Dots(), so.Jitter(x=200, y=5))
)
../_images/objects.Jitter_11_0.png