[R] How to plot points as numbers/strings in lattice
Deepayan Sarkar
deepayan at stat.wisc.edu
Wed Mar 16 00:38:42 CET 2005
On Tuesday 15 March 2005 16:54, Owen Solberg wrote:
> Hello,
>
> I would be very grateful if anyone could help with what seems like a
> simple lattice task. I want to use xyplot, where the symbols for the
> plotted points are taken from another column in the data frame. So
> if the data frame looked like:
>
> a <- as.data.frame(matrix(data=c(1,1,10,2,2,20,3,3,30), nrow=3,
> ncol=3, byrow=TRUE)) a
>
> V1 V2 V3
> 1 1 1 10
> 2 2 2 20
> 3 3 3 30
>
> you would get an xy scatter plot using where "10" (not a dot) is at
> coordinate 1,1, "20" is at 2,2, and so on.
>
> I have made two attempts. The first, below, almost works, but only
> takes the first character from the V3 column:
>
> library(lattice)
> xyplot(V1~V2, data=a, pch=as.character(a$V3))
>
> I've also tried this example, which is given in an online user guide
> for trellis. It uses the built-in "ethanol" data set (which is also
> in lattice), and subscripts... but when I try the same code in
> lattice, I get an "invalid graphics state" error.
>
> library(lattice)
> xyplot(NOx ~ E | C, data = ethanol, aspect = 1/2,
> panel = function(x, y, subscripts)
> text(x, y, subscripts, cex = .75)
> )
text() will not do anything useful in a lattice panel function, you want
to use ltext or panel.text. There's a very similar example in the help
page for xyplot.
Deepayan
More information about the R-help
mailing list