[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