Figure 12-12: A Basic Bar Plot

Portfolio Categories: All Graphics and SGR Book Graphics.

Distribution of Polity Values

An R Graphics Barplot of Polity Values


# 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),]

# barplots ---------------------------------------------------------------------

P4breaks = cut(myData$P4, breaks = 5)  # Create factor with P4 in 5 bins
newP4 = tapply(myData$P4,              # Create vector of bar heights
  P4breaks,                            #  based on the bins we created       
  length)                              #  count number of obs in each bin

png(filename = "illustrations/fig-12-12-barplot1.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

barplot(newP4)                         # Create a barplot

dev.off()                              # Output png file