显示县投票的简单条形图

时间:2019-01-22 21:25:09

标签: r bar-chart

我对R和绘制情节还很陌生,对此感到抱歉。我有一个县投票数据集,我想制作一个条形图,显示每个县投票给多少个任务。

到目前为止,我要做的是提取一行,其中包括县名和它为不同政党投票的任务授权数(标头)。

Fylker    AP FRP H KrF SP
Ostlandet  3  2   2  0  1

很抱歉,代码显示不佳,每当我粘贴代码时,尽管缩进,但看起来还是很奇怪。

数据称为“ Ostlandet”,仅1行。因此,正如我在上面试图解释的那样,我想以此为基础进行绘制。想法是在x轴上拥有不同的参与者,在y上拥有投票数。到目前为止,我已经尝试过了

ggplot(Ostfold, aes(x = Ostfold[1,])) +
  geom_histogram(binwidth = 20)

这给了我很多错误。

我也尝试过使用barplot,但是我似乎无法弄清楚。

对不起,这可能非常简单,但我只是开始编码。

1 个答案:

答案 0 :(得分:1)

您遇到了一些问题。首先,不需要提取行。其次,数据采用“宽”格式(列中的任务),而不是“长格式”(具有值的名为“任务”的列)。第三,您想绘制计数,以便geom_col()geom_histogram()好。

gather()包中的tidyr函数将使您的数据变长:

library(tidyr)
library(ggplot2)

Ostfold %>%
  gather(Mandate, Votes, -Fylker)

应该会生成如下内容:

     Fylker Mandate Votes
1 Ostlandet      AP     3
2 Ostlandet     FRP     2
3 Ostlandet       H     2
4 Ostlandet     KrF     0
5 Ostlandet      SP     1

您可以将其传递给ggplot

Ostfold %>% 
  gather(Mandate, Votes, -Fylker) %>% 
  ggplot(aes(Mandate, Votes)) + geom_col()

一行的结果:

enter image description here

对于具有多个县的数据集,您可能需要添加+ facet_wrap(~Fylker)来按县分面图,具体取决于有多少县。