如何使 Swarmplot (Seaborn) 中的点相互重叠?

Hie*_*nga 3 python data-visualization matplotlib python-3.x seaborn

我用seaborn做了一个swarmplot,但我似乎找不到使点相互重叠的选项。

它们彼此重叠,但仅在侧面重叠。

我希望它们在无法安装时在任何地方重叠,但现在它们只在侧面重叠。

data = sns.load_dataset('iris')
sns.swarmplot(data=data, y="sepal_length", x="species", edgecolor="black",alpha=.5, s=15,linewidth=1.0)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

Imp*_*est 6

我认为不可能让标记故意与 swarmplot 重叠。当然,如果需要,较小的标记根本不会重叠。

另外一个hacky wordaround是使用seaborn硬编码特定图形大小的标记之间的距离这一事实。因此,在一个巨大的数字,如果没有发生重叠打印时,但随后使人物更小之后,overlapp应该是相当高的。

import seaborn as sns
import matplotlib.pyplot as plt

data = sns.load_dataset('iris')
fig, ax = plt.subplots(figsize=(19,4.8))
sns.swarmplot(data=data, y="sepal_length", x="species", 
                   edgecolor="black",alpha=.5, s=15,linewidth=1.0, ax=ax)
fig.set_size_inches(6.4,4.8)

plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

在这里,您需要为 找到合适的值figsize,以便您对结果感到满意。