seaborn.objects.Bars#

class seaborn.objects.Bars(artist_kws=<factory>, color=<'C0'>, alpha=<0.7>, fill=<True>, edgecolor=<rc:patch.edgecolor>, edgealpha=<1>, edgewidth=<auto>, edgestyle=<'-'>, width=<1>, baseline=<0>)#

ヒストグラムに適したデフォルト値を持つ、より高速な棒マークです。

このマークは次のプロパティを定義します

color, alpha, fill, edgecolor, edgealpha, edgewidth, edgestyle, |width|, |baseline|

参照

Bar

ベースラインとデータ値の間で描画される棒マークです。

このマークはベースラインと値の間に棒を描画します。Barとは対照的に、棒はデフォルトで全幅で細いエッジを持ちます。これにより、このマークは連続ヒストグラムに適した選択肢になります。

p = so.Plot(diamonds, "price").scale(x="log")
p.add(so.Bars(), so.Hist())
../_images/objects.Bars_1_0.png

色やその他のプロパティをマッピングすると、棒はデフォルトで重なり合います。これは通常、混乱を招きます。

p.add(so.Bars(), so.Hist(), color="cut")
../_images/objects.Bars_3_0.png

StackDodgeなどの移動変換を使用すると、オーバーラップが解消されます(ただし、ファセット分割の方が適切な場合が多くあります)。

p.add(so.Bars(), so.Hist(), so.Stack(), color="cut")
../_images/objects.Bars_5_0.png

多くの異なるプロパティを設定またはマッピングできます

p.add(so.Bars(edgewidth=0), so.Hist(), so.Stack(), alpha="clarity")
../_images/objects.Bars_7_0.png

塗りつぶされていない棒を描画することもできますが、デフォルトのエッジの色をオーバーライドする必要があります

p.add(so.Bars(fill=False, edgecolor="C0", edgewidth=1.5), so.Hist())
../_images/objects.Bars_9_0.png

棒を狭めることもできます。これは、場合によってはオーバーラップに対処するのに役立つ場合があります。

hist = so.Hist(binwidth=.075, binrange=(2, 5))
(
    p.add(so.Bars(), hist)
    .add(
        so.Bars(color=".9", width=.5), hist,
        data=diamonds.query("cut == 'Ideal'")
    )
)
../_images/objects.Bars_11_0.png