【问题标题】:Horizontal barplot in Seaborn using dataframeSeaborn中使用数据框的水平条形图
【发布时间】:2021-03-08 03:06:45
【问题描述】:

我正在与 seaborn 中的条形图作斗争,我不确定自己做错了什么。数据很简单:

name     totalCount
Name1    2000
Name2    40000
Name3    50000

sns.barplot(x='name',y='totalCount',data=df)

生成一个具有均值(totalCount)而不是实际计数的条形图。

sns.countplot('name',data=df)

生成一个条形图,y 轴上的所有计数值都等于 1。

如何生成具有以下内容的图:

x 轴上的总数,y 轴上的名称?

【问题讨论】:

    标签: python seaborn


    【解决方案1】:

    通常在绘制条形图时,每个类别级别都会传入一个值向量,并应用一些函数来评估每个向量以确定每个条形的长度。

    在您的情况下,您已经有了一个计数,并且只想要一个与计数值一样长的条形。

    Seaborn 的默认估算器是 mean 并不重要,它仍应为您提供所需的内容,因为它只是针对每个类别级别取单个值的平均值。可以通过调用 estimator 参数来更改估计函数,例如estimator=sum,但在这种情况下你不需要。您只需要更改轴标签:

    ax = sns.barplot(x='totalCount', y='name', data=df)
    ax.set_xlabel('totalCount')
    

    【讨论】:

    • 如何根据总数更改 Name1、Name2、Name3 的条形颜色
    猜你喜欢
    • 2017-09-30
    • 2019-05-29
    • 2020-06-29
    • 1970-01-01
    • 2018-09-24
    • 2020-08-13
    • 1970-01-01
    • 2020-11-30
    • 1970-01-01
    相关资源
    最近更新 更多