使用as.factor

时间:2018-06-08 17:47:37

标签: r ggplot2

我希望有人可以提供帮助。

我有一个DF如下:

Year   Winner
1930  Uruguay    
1934  Italy    
1938  Italy    
1950  Uruguay    
1954  Germany FR    
1958  Brazil    
1962  Brazil    
1966 England    
1970  Brazil    
....

等等

我想要做的是创建一个带有ggplot2的条形图,但重新排序,以便获得最多赢家的国家排在第一位。

我用来生成当前图表的代码是:

ggplot(data, aes(x=as.factor(Winner), fill=as.factor(Winner) )) + 
geom_bar() + 
theme(legend.position = "none")

我知道有关于重新排序的事情,但我无法使用as.factor参数。

谢谢

1 个答案:

答案 0 :(得分:2)

我使用forcats解决了这个问题

    require(forcats)
    ggplot(data, aes(fct_infreq(Winner),  fill=as.factor(Winner))) +
    geom_bar()+
    theme(legend.position = "none")