reorder_within (ggplot2) 有问题

Having problems with reorder_within (ggplot2)

我有一个方面的问题。我想在我的小数据集中使用 'region' 变量拆分我的数据,然后按 'andel' 重新排序。我尝试使用 reorder_within (tidytext),它确实对条形图进行了正确排序,但在每个方面我都得到了数据集中的每个刻度标签,总共 18 个,尽管我每组只有六个观察值。我在这里错过了什么?

非常感谢您的帮助。

这是我的数据。

region               FodelseLandNamn             n  andel
 1 Skåne län            Sydost-Asien             2223 0.0954
 2 Skåne län            Södra Europa             3188 0.137 
 3 Skåne län            Södra och Central-Asien  2353 0.101 
 4 Skåne län            Västra Asien             9037 0.388 
 5 Skåne län            Östra Afrika             1148 0.0493
 6 Skåne län            Östra Europa             2017 0.0866
 7 Stockholms län       Syd-Amerika              3391 0.0767
 8 Stockholms län       Sydost-Asien             3275 0.0741
 9 Stockholms län       Södra och Central-Asien  6029 0.136 
10 Stockholms län       Västra Asien            12433 0.281 
11 Stockholms län       Östra Afrika             5990 0.136 
12 Stockholms län       Östra Europa             3500 0.0792
13 Västra Götalands län Sydost-Asien             2337 0.0966
14 Västra Götalands län Södra Europa             2407 0.0994
15 Västra Götalands län Södra och Central-Asien  3072 0.127 
16 Västra Götalands län Västra Asien             7085 0.293 
17 Västra Götalands län Östra Afrika             4475 0.185 
18 Västra Götalands län Östra Europa             1215 0.0502


ggplot(df_desk1, aes(reorder_within(FodelseLandNamn, andel, region), andel, fill = region)) +
        geom_bar(stat = "identity") +
        coord_flip() +
        scale_x_reordered() +
        facet_grid(region ~., scales = "free_x")

/亨里克

如果我理解的很好,你可以这样做:

library(tidyverse)
ggplot(df_desk1, aes(reorder_within(FodelseLandNamn, andel, region), andel, fill = region)) +
  geom_bar(stat = "identity") +
  coord_flip() +
  scale_x_reordered() +
  facet_grid(region ~., scales = "free")

使用these.

我无法评论 s_t 的解决方案(我缺少代表),但您需要将 scales = "free_x" 更改为 scales = "free"scales = "free_y".然后 ggplot 清理额外的级别。