我用 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)
请您参考如下方法:
我认为故意让标记与 swarmplot 重叠是不可能的。当然,如果需要的话,较小的标记根本不会重叠。
否则,一个变通的词是使用这样一个事实,即 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()
在这里您需要为 figsize 找到合适的值,以便您对结果感到满意。
