【问题标题】:Seaborn PointPlot Category Ordering IssueSeaborn PointPlot 类别排序问题
【发布时间】:2017-03-03 02:30:44
【问题描述】:

我一直在尝试在 Seaborn 中使用点图,总的来说它可以满足我的需要,而且我对它的功能印象非常深刻。

我的用例相当标准:

sns.pointplot(x="Category_1", y="Parameter", hue="Category 2", data=df);

我的问题是我用于色调的类别包含以下形式的字符串:

"1 string1", "2 string2", "3 string3", etc....

这是设计使然,如果我进行排序,我可以获得特定的订单。但是,当我运行 Seaborn 函数时,顺序是不同的。

Seaborn 根据什么逻辑对此进行排序,是否有强制执行所需命令的方法。如果我这样做:

A = df.Category2.unique()
A.sort()

我得到了我想要的列表顺序。

【问题讨论】:

    标签: python seaborn


    【解决方案1】:

    正如tutorial 中所述,分类绘图函数遵循一组规则来确定绘图元素的顺序:

    • 如果将一系列类别传递给order 参数,则使用该顺序。
    • 如果变量是具有指定类别顺序的 pandas Categorical,则使用该顺序。
    • 如果变量是数字,则值按排序顺序显示
    • 否则,值将按照它们在 DataFrame 中出现的顺序显示。

    【讨论】:

      猜你喜欢
      • 2019-12-01
      • 2018-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-03
      • 2021-11-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多