Figure 12-14: A Basic Dot Chart

Portfolio Categories: All Graphics and SGR Book Graphics.

Demonstration of R Graphics Dot Chart

A Basic R Graphics Dot Plot of Corruption Data


# Read in data
myData = read.delim(file = "http://www.kktg.net/R/Chapter12Data.txt",
  colClasses = c("character", "numeric", "numeric", "numeric"), header = T)

# Create categorical versions of the dem/polity data
myData$dem = 
  ifelse(myData$P4 > 7, 1, 0)          # Dem if Polity >7    
myData$corrupt = 
  ifelse(myData$CPI < 4, 1, 0)         # Corrupt if CPI<4
myData$cGDPk = myData$cGDP/1000        # Per capita GDP in 1000s

# Remove all observations with missing data
myData = myData[!is.na(myData$CPI) & !is.na(myData$P4),]


# 12.6 Dot plots ========================================================== 12.6

# Create a basic dotchart of the corruption data

CPIcounts = tapply(myData$CPI,         # Aggregate CPI data
  as.factor(round(myData$CPI)),        #  in bins based on integer values
  length)                              #  count number of obs in each bin     

png(filename = "illustrations/fig-12-14-dotplot.png",
  units = "in",                        # Set measurements in inches
  res = 1200,                          # Set resolution at 1200dpi
  width = 6,                           # Width at 6 inches
  height = 4))                         # Height at 4 inches

par(mai = c(.5, .5, .25, .25))         # Change margins for png graphs

dotchart(CPIcounts)                    # Produce basic dot chart

dev.off()                              # Output png file