我刚刚在ggplot2中找到了函数facet_grid,这很棒。问题是:我有6个国家(列HC)的列表和世界各地的航班目的地。我的数据是这样的:如何在facet_grid中在ggplot2中显示更高的值
HC Reason Destination freq Perc
<chr> <chr> <chr> <int> <dbl>
1 Germany Study Germany 9 0.3651116
2 Germany Work Germany 3 0.1488095
3 Germany Others Germany 3 0.4901961
4 Hungary Study Germany 105 21.4285714
5 Hungary Work Germany 118 17.6382661
6 Hungary Others Germany 24 5.0955414
7 Luxembourg Study Germany 362 31.5056571
有没有一种方法,在每个国家只显示前十大目的地和使用功能facet_grid?我试着做散点图这样:
Geograp %>%
gather(key=Destination, value=freq, -Reason, -Qcountry) %>%
rename(HC = Qcountry) %>%
group_by(HC,Reason) %>%
mutate(Perc=freq*100/sum(freq)) %>%
ggplot(aes(x=Perc, y=reorder(Destination,Perc))) +
geom_point(size=3) +
theme_bw() +
facet_grid(HC~Reason) +
theme(panel.grid.major.x = element_blank(),
panel.grid.minor.x = element_blank(),
panel.grid.major.y = element_line(colour = "grey60", linetype = "dashed"))
将会产生此图:我想避免在y轴的overplotting。提前致谢!!!
感谢您的回答!我的问题是在每个国家(HC列)都有自己的“十大目的地”。有没有简单的方法来将函数top_n与faces_grid集成? –
我不是很明白你的意思,那么这个专栏所代表的是什么意思,它是自己的十大目的地?它在哪里显示在你的桌子上?什么样的10个最热门的目的地你想表演? –
我的意思是,慧聪是旅行的始发国,目的地是目的地国家。所以每个“原产国”都有自己的“十大目的地”。不过,你的回答给了我一个很好的起点!谢谢! –