Preparation

Import data.

library(sm)
attach(mtcars)
data = as.data.frame(na.omit(mtcars))
names(data)
##  [1] "mpg"  "cyl"  "disp" "hp"   "drat" "wt"   "qsec" "vs"   "am"   "gear"
## [11] "carb"

Simple dot plot

Produce a dot plot.

dotchart(data$mpg, labels=row.names(data), cex=0.7, 
         xlab="Miles Per Gallon")

Produce a grouped, sorted, and colored dot plot.

data.sort <- data[order(data$mpg),]
data.sort$cyl <- factor(data.sort$cyl)
data.sort$color[data.sort$cyl==4] = "red"
data.sort$color[data.sort$cyl==6] = "blue"
data.sort$color[data.sort$cyl==8] = "darkgreen"
dotchart(data.sort$mpg, labels=row.names(data.sort),
         groups=data.sort$cyl, gcolor="black",
         color=data.sort$color, pch=19, cex=0.7,
         xlab="Miles Per Gallon")