首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Julia包Gadfly对箱线图中的分类变量进行排序

如何使用Julia包Gadfly对箱线图中的分类变量进行排序
EN

Stack Overflow用户
提问于 2020-11-02 03:22:08
回答 1查看 269关注 0票数 1

Gadfly似乎没有使用分类变量的(级别)顺序:

代码语言:javascript
复制
using CSV
using DataFrames
using Gadfly
using HTTP

url = "https://raw.githubusercontent.com/mwaskom/seaborn-data/master/tips.csv"

tips = CSV.File(HTTP.get(url).body) |> DataFrame
categorical!(tips, :day)
ordered!(tips.day, true)
levels!(tips.day, ["Thur", "Fri", "Sat", "Sun"])

Gadfly.plot(tips, x=:day, y=:total_bill, color=:smoker, Geom.boxplot)

绘图不应该继承分类变量中指定的顺序吗?

我找到了一种对分类值进行排序的方法,但由于再次指定了顺序,这让人感觉有点“but”。

代码语言:javascript
复制
Gadfly.plot(tips, x=:day, y=:total_bill, color=:smoker, Geom.boxplot,
    Scale.x_discrete(levels=levels(tips.day)))

有什么建议如何解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2020-11-02 07:24:15

在Gadfly中,对于离散x,值的顺序由它们在数据帧中的顺序确定(因此目前不支持CategoricalArray中的级别顺序)。将来可能不会支持它,因为DataFrames计划放弃CategoricalArrays (https://github.com/JuliaData/DataFrames.jl/issues/2321)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64636020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档