使用facet_wrap和两个变量在R中订购条形图

Justas Mundeikis

我的意图是使用ggplot2和facet_wrap绘制2个“长期”和“非常长期”失业率图表。我希望按indic ==“ LTU”(facet_wrap的顶部)的顺序升序,因此在顶部的图表中“ LU”和“ MT”将不在右侧。但是我不管理ggplot来正确订购酒吧。有什么建议吗?

可重现的示例:

library(tidyverse)
library(eurostat)

#Long-term unemployment by sex - quarterly average 
une_ltu_q <- get_eurostat("une_ltu_q", stringsAsFactors=FALSE)


df <- une_ltu_q %>% filter(age=="Y15-74",
                          geo %in% c("EU28", "BE","BG","CZ","DK","DE","EE","IE","EL","ES","FR","HR","IT","CY","LV","LT","LU","HU","MT","NL","AT","PL","PT","RO","SI","SK","FI","SE","UK"),
                          sex=="T",
                          s_adj=="SA",
                          time==max(une_ltu_q$time), 
                          unit=="PC_ACT")%>% 
        group_by(indic_em)%>% arrange()



ggplot(data=df, aes(x=reorder(geo, values), y=values))+
        geom_bar(stat = "identity", 
                 position = "dodge", 
                 show.legend = FALSE,
                 fill="steelblue")+
        geom_text(aes(label=values), vjust=-0.5, size=3.5)+
        facet_wrap(~indic_em, ncol=1, scales = "free")

reorder有一个FUNction参数,您可以使用它来更改顺序。默认情况下,您的示例按mean两个值中的进行排序但是您也可以只取第一个值:

ggplot(data=df, aes(x=reorder(geo, values, "[", 1), y=values))+
  geom_bar(stat = "identity", 
           position = "dodge", 
           show.legend = FALSE,
           fill="steelblue")+
  geom_text(aes(label=values), vjust=-0.5, size=3.5)+
  facet_wrap(~indic_em, ncol=1, scales = "free")

在此处输入图片说明

sum

ggplot(data=df, aes(x=reorder(geo, values, sum, na.rm=T), y=values))+
  geom_bar(stat = "identity", 
           position = "dodge", 
           show.legend = FALSE,
           fill="steelblue")+
  geom_text(aes(label=values), vjust=-0.5, size=3.5)+
  facet_wrap(~indic_em, ncol=1, scales = "free")

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

熊猫:具有两个条和两个y轴的条形图

ggplot条形图并排使用两个变量

带有geom_bar和facet_wrap的ggplot未显示分组堆积条形图的图例

具有第三个变量displayng百分比的两个类别变量facet_wrap的ggplot 2的条形图

R:具有两个分组顺序和三列数据的堆叠条形图

ggplot2:具有两个变量的多层图的facet_wrap失败

将ggsignif与组合的条形图和facet_wrap结合使用不起作用

通过ggplot中的另一个变量订购条形图

带两个变量的条形图

使用Plotly.js绘制两个条形图和两个散点图并共享相同的x轴

将绘制的条形图从两个图重新排列为R中的三个不同图

如何在R中创建分组条形图而不是facet_wrap?

直方图/条形图,条形图中包含两个变量

在R中绘制两个彼此相邻的条形图

Android中使用aChartEngine的两个条形图和两个折线图的组合

在R中订购条形图

在R中使用ggplot的条形图,并填充两个数字变量

R中qplot条形图的两个问题轴

在MATLAB中绘制带有两个y轴和多个条的条形图

两个类别变量的R条形图

Plotly Facet_Wrap条形图不起作用

从 R 中的 2 个计数变量创建条形图

Matlab - 带有两个图和两个轴的条形图

无法在 R 中订购条形图

为 R 中同一图中的一个变量创建两个条形图

如何订购具有两个因子变量的 facet_wrap?

如何按两个变量分组的条形图

并排显示数据框中两个变量的条形图

R中具有两个类别的堆叠条形图