[R] Choropleth map over an outline of Florida's 67 counties
Thomas MacFarland
tomm@c @end|ng |rom nov@@edu
Thu May 30 20:42:59 CEST 2019
Everyone:
I am trying to build a choropleth map that uses colored shading to identify the number of incidents for a specific event during Calendar Year 2018 throughout Florida, ideally on a county-by-county basis.
I'd also like to include the county borders in the map, to emphasize urban v rural. However, if the county borders cannot be displayed along with the choropleth colored shading that would be acceptable.
Everything is fine up to the choropleth map part of this activity and that is where I'm stuck. Any idea, pointers, recommended references, etc. would be helpful. Somehow, I need to have the dataset with number of incidents interface with the mapping part of this activity and I've run out of online resources for review - but still no success.
Thanks and I'm very grateful for any assistance.
Best wishes.
Tom
#############################################################
# < CY2018Incidents67FloridaCounties >
#
# There are two main goals for this activity:
#
# Produce a map of Florida that outlines all 67 counties,
# which will serve as a base map of Florida.
#
# Place over the base map of Florida a choropleth map that
# uses colored shading to give a sense of the number of
# incidents, by county, during Calendar Year 2018.
#
# Ideally, the county outlines will show along with the
# colored shading.
#
# As expected, the highly-populated urban counties will have
# more incidents than the sparsely-populated rural counties.
# Start out with a clean slate.
ls()
rm(list=ls(all=TRUE))
ls()
# Install the required packages.
install.packages(c("ggplot2", "ggthemes", "ggmap", "maps",
"mapdata"))
library(ggplot2); library(ggthemes); library(ggmap)
library(maps); library(mapdata); library()
# Build a dataframe of U.S. states and a dataframe of
# Florida.
States.df <- map_data("state")
str(States.df)
head(States.df)
Florida.df <- subset(States.df, region == "florida")
str(Florida.df)
head(Florida.df)
# Build a dataframe of U.S. counties and a dataframe of
# Florida counties.
Counties.df <- map_data("county")
str(Counties.df)
head(Counties.df)
FloridaCounties.df <- subset(Counties.df, region == "florida")
str(FloridaCounties.df)
head(FloridaCounties.df)
# Produce a map that outlines all 67 counties in Florida.
Florida_map1 <- ggplot2::ggplot(data = FloridaCounties.df,
mapping = aes(x = long, y = lat, group = group)) +
coord_fixed(1.3) +
geom_polygon(color = "red", fill = "aliceblue")
par(ask=TRUE); Florida_map1
# Map of Florida with all 67 counties in a red outline
# Build a dataframe that details the number of Calendar Year
# 2018 incidents for each county.
CY2018Incidents.df <- read.table(textConnection("
FIPSCode Incidents # County
12001 89 # Alachua
12003 1 # Baker
12005 21 # Bay
12007 4 # Bradford
12009 165 # Brevard
12011 8218 # Broward
12013 1 # Calhoun
12015 35 # Charlotte
12017 16 # Citrus
12019 42 # Clay
12021 115 # Collier
12023 10 # Columbia
12027 7 # De Soto
12029 0 # Dixie
12031 368 # Duval
12033 21 # Escambia
12035 29 # Flagler
12037 2 # Franklin
12039 9 # Gadsden
12041 0 # Gilchrist
12043 2 # Glades
12045 0 # Gulf
12047 0 # Hamilton
12049 3 # Hardee
12051 15 # Hendry
12053 24 # Hernando
12055 16 # Highlands
12057 613 # Hillsborough
12059 0 # Holmes
12061 48 # Indian River
12063 2 # Jackson
12065 0 # Jefferson
12067 0 # Lafayette
12069 80 # Lake
12071 391 # Lee
12073 62 # Leon
12075 3 # Levy
12077 0 # Liberty
12079 2 # Madison
12081 72 # Manatee
12083 63 # Marion
12085 70 # Martin
12086 4075 # Miami-Dade
12087 18 # Monroe
12089 12 # Nassau
12091 25 # Okaloosa
12093 5 # Okeechobee
12095 547 # Orange
12097 93 # Osceola
12099 1602 # Palm Beach
12101 115 # Pasco
12103 232 # Pinellas
12105 154 # Polk
12107 10 # Putnam
12113 14 # Santa Rosa
12115 61 # Sarasota
12117 183 # Seminole
12109 60 # St. Johns
12111 170 # St. Lucie
12119 1 # Sumter
12121 2 # Suwannee
12123 1 # Taylor
12125 0 # Union
12127 137 # Volusia
12129 1 # Wakulla
12131 5 # Walton
12133 2"), header=TRUE) # Washington
attach(CY2018Incidents.df)
str(CY2018Incidents.df)
head(CY2018Incidents.df)
# And here is where I am stuck! How do I produce what would
# otherwise be Florida_map2, where the choropleth map of
# incidents is placed over the map that outlines Florida's 67
# counties.
# May 30, 2019 02:25 PM
#############################################################
----------
Thomas W. MacFarland, Ed.D.
Senior Research Associate; Institutional Effectiveness and Associate Professor
Nova Southeastern University
Voice 954-262-5395 tommac using nova.edu<mailto:tommac using nova.edu>
[[alternative HTML version deleted]]
More information about the R-help
mailing list