[R] Simple categorical scatter plot

Richard DeVenezia rdevenezia at gmail.com
Thu Sep 23 13:38:43 CEST 2010


New to R.  I am trying to create a simple xy plot wherein the line
segment color is determined by a categorical column

The following does not change colors for me, probably because I don't
quite have a handle on either functions or value mapping syntax.
----------
time     <- c(1, 2, 3, 7,10,11,14,16,20)
pressure <- c(0,10,20,20,50,18,60,65,90)
status   <- c(0, 0, 1, 1, 1, 0, 3, 3, 3)
measures <- c(time,pressure,status)

attach(measures)

statusColor <- function (x) {
  if (x==0) return ("green")
  if (x==1) return ("orange")
  if (x==2) return ("pink")
  if (x==3) return ("red")
}

par(mfrow=c(3,2))
plot(time,pressure,type="l")
plot(time,pressure,type="l")
plot(time,pressure,type="l")
plot(time,pressure,type="l")
plot(time,pressure,type="l",col=statusColor(status))
plot(time,pressure,type="l")
----------
Warning message:
In if (x == 0) return("green") :
  the condition has length > 1 and only the first element will be used


TIA,
Richard A. DeVenezia



More information about the R-help mailing list