【问题标题】:Plotting series using seaborn使用 seaborn 绘制系列
【发布时间】:2018-03-29 08:09:53
【问题描述】:
category = df.category_name_column.value_counts()  

我有上面的系列返回值:

CategoryA,100
CategoryB,200

我正在尝试在 X 轴上绘制前 5 个类别名称,在 y 轴上绘制值

head = (category.head(5)) 
sns.barplot(x = head ,y=df.category_name_column.value_counts(), data=df)

它不会在 X 轴上打印类别的“名称”,而是打印计数。如何打印 X 中的前 5 个名称和 Y 中的值?

【问题讨论】:

    标签: python pandas matplotlib data-visualization seaborn


    【解决方案1】:

    您可以将系列中的indexvalues 分别传递给xy sns.barplot。这样,绘图代码变为:

    sns.barplot(head.index, head.values)
    

    我正在尝试在 X 中绘制前 5 个类别名称

    调用category.head(5) 将返回category 系列中的前五个值,根据每个类别出现的次数,这可能不同于前5 个。如果你想要最频繁的 5 个类别,需要先对系列进行排序,然后调用head(5)。像这样:

    category = df.category_name_column.value_counts()
    head = category.sort_values(ascending=False).head(5)
    

    【讨论】:

      猜你喜欢
      • 2020-04-24
      • 2019-08-22
      • 2018-02-13
      • 2017-12-09
      • 1970-01-01
      • 2019-10-23
      • 2014-10-31
      • 1970-01-01
      • 2015-05-19
      相关资源
      最近更新 更多