【发布时间】:2018-12-07 18:21:44
【问题描述】:
我正在尝试锁定变量的因子级别顺序,以使结果以与数据框相同的顺序显示在绘图中。
datad$outcome <- factor(data$outcome, levels = unadjusted.combined$outcome)
当某些行重复时,有没有办法解决此顺序:我的行重复,因为我有两个不同度量的结果,这会产生错误:
Error in `levels<-`(`*tmp*`, value = if (nl == nL) as.character(labels) else paste0(labels, : factor level [54] is duplicated
我的数据看起来像这样;
xvar outcome
x1 wt_2
x1 wt_3
x1 wt_4
x1 bmi_2
x1 bmi_3
x1 bmi_4
x2 wt_2
x2 wt_3
x2 wt_4
x2 bmi_2
x2 bmi_3
x2 bmi_4
最后,我的情节如下:(目前结果按字母顺序排列)
ggplot(data=data, aes(x=outcome, y=estimate, ymin=lci, ymax=uci, colour=xvar)) + geom_pointrange() + geom_hline(yintercept=0, lty=2) + coord_flip()
【问题讨论】:
-
在 factor 函数中,您需要使用 order= 选项。
-
你能解释一下你的意思吗,我已经尝试了不同的选项,但没有奏效
标签: r ggplot2 data-manipulation