В зависимости от того, как ваши данные выглядят и как они структурированы, вот простое решение, использующее базовую графику R:
Давайте предположим, что ваши данные примерно структурированы, как этот df, с одним столбцом за годы, в которыхбыли проведены выборы, и по одной колонке для результатов двух партий:
y <- c(10, 14, 18, 22, 26)
df <- data.frame(
Year = c(paste("20",y, sep = "")),
Rep = c(rnorm(5, 10)),
Dem = c(rnorm(5, 15))
)
, затем вы можете сохранить результаты выборов в одном векторе, транспонируя их, используя t
и cbind
, используя их:
election.results <- t(cbind(df$Rep, df$Dem))
Теперь вы можете построить график election.results
на графике, используя аргумент beside
и df$Year
для имен в names.arg
плюс используя legend
для предоставления ключа:
barplot(election.results, beside=T, names.arg = df$Year, col=c("red","blue"))
par(xpd=T) # this will probably not be necessary with the real data
legend(19, c("Republicans", "Democrats"), horiz = T, col=c("red","blue"), fill=c("red","blue"))