代码之家  ›  专栏  ›  技术社区  ›  Max Ghenis shoyer

将多个seaborn散点图添加到同一轴时保留大小范围

  •  0
  • Max Ghenis shoyer  · 技术社区  · 5 年前

    我正在添加多个 seaborn scatterplot s到同一轴,并要确保每个点的大小对应于相同的大小值。

    例如,假设我想在 tips 数据集,例如分配不同的 alpha 值,以及我想要的大小 size . 最大值 大小 吸烟者和非吸烟者的数值不同,因此尺寸的含义不同:

    import seaborn as sns
    
    tips = sns.load_dataset("tips")
    
    ax = sns.scatterplot(x="total_bill", y="tip", size="size", sizes=(10, 100),
                         data=tips[tips.smoker == "Yes"], alpha=0.8)
    sns.scatterplot(x="total_bill", y="tip", size="size", sizes=(10, 100),
                    data=tips[tips.smoker == "No"], alpha=1.0, ax=ax)
    

    scatterplot

    tips.groupby('smoker')['size'].max()
    # smoker
    # Yes    5
    # No     6
    

    像这样传递字典 sizes={1:10, 6:100} 不起作用,因为字典要求指定所有级别:

    ValueError:缺少以下级别的大小:{2,3,4,5}

    0 回复  |  直到 5 年前