Reputation: 2065
I'm using R to generate a map of percentage of voters that voted Democrat and Republican for each election since 1948. So I have a map of the US (broken down into states), and I want to generate two maps for each election (one for each party).
I'm using the GIStools and rgdal library, and my tentative code is like this:
variablelist = c("Dem1948", "Rep1948", ..., "Dem2012", "Rep2012")
for (variable in variablelist) {
shades <- auto.shading(USA$variable, n = 5, cols = brewer.pal(5, "Blues"))
choropleth(USA, USA,variable, shades)
choro.legend(-91, 27, shades, fmt = "%g", title = "Voting Percentage")
}
The problem is my title (see the last line) is very generic for every map. How can I automatically make the title for "Dem1948" to be "Percentage that voted for Democrats in 1948", and so on?
Upvotes: 0
Views: 40
Reputation: 1463
You could add the following to your code:
party_use <- ifelse(grepl("Dem",variable),"Democrats","Republicans")
year_use <- substr(variable,4,7)
choro.legend(-91, 27, shades, fmt = "%g", title = paste0("Percentage that voted for ", party_use," in ", year_use))
Upvotes: 1