Skip to content

Instantly share code, notes, and snippets.

@christophergandrud
Created March 25, 2012 09:05
Show Gist options
  • Save christophergandrud/2192502 to your computer and use it in GitHub Desktop.
Save christophergandrud/2192502 to your computer and use it in GitHub Desktop.
Disproportionality Map and Chart
############
# Gallagher Disproportionality Data Explore
# Christopher Gandrud
# 25 March 2012
###########
library(foreign)
library(ggplot2)
library(googleVis)
library(gdata)
## Load data
data <- read.csv(~/Disproportionality.csv)
## Plot disproportionality in 121 countries from 1945 to 2011
dispPlot <- ggplot(data, aes(year, disproportionality)) +
geom_point() +
stat_smooth() +
scale_y_log10() +
xlab("\n Year") + ylab("Gallagher Disproportionality Index (log scale) \n") +
opts(title = "Gallagher Electoral Disproportionality in 121 Countries from 1945 to 2011 \n") +
theme_bw()
dispPlot
## Create average disproportionality from 2000 to 2011
dataMap <- subset(data, year > 1999)
average <- tapply(dataMap$disproportionality, dataMap$country, mean)
average <- data.frame(average)
average$country <- row.names(average)
dataMap <- subset(average, !is.na(average))
dataMap <- rename.vars(dataMap, from = "average", to = "Average disproportionality")
## googleVis Map
disMap <- gvisGeoMap(dataMap, locationvar = "country", numvar = "Average disproportionality")
plot(disMap)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment