Hi Sundar, Thanks for your help! Unfortunately your code seems to give the same result. Compare this:
temp <- data.frame( x = 1:10, y = 1:10, cex = rep( c(1,3), 5), col = c( rep("blue", 5), rep("red", 5) ), groups = c( rep("A", 5), rep("B", 5) ) ); xyplot(y ~ x, temp, groups = groups, par.settings = list( superpose.symbol = list( cex = c(1, 3), pch = 19, col = c("blue", "red")))) And this: xyplot(y ~ x, temp, cex = temp$cex, col = temp$col, pch = 19); Once I introduce groups, I lose the ability to customize individual data-points and seem only to be able to customize entire groups. Paul -----Original Message----- From: Sundar Dorai-Raj [mailto:sdorai...@gmail.com] Sent: Tuesday, March 10, 2009 5:49 AM To: paul.bout...@utoronto.ca Cc: r-help@r-project.org Subject: Re: [R] Lattice: Customizing point-sizes with groups Try this: xyplot(y ~ x, temp, groups = groups, par.settings = list( superpose.symbol = list( cex = c(1, 3), pch = 19, col = c("blue", "red")))) See: str(trellis.par.get()) for other settings you might want to change. Also, you should drop the ";" from all your scripts. HTH, --sundar On Mon, Mar 9, 2009 at 6:49 PM, Paul Boutros <paul.bout...@utoronto.ca> wrote: > Hello, > > I am creating a scatter-plot in lattice, and I would like to customize the > size of each point so that some points are larger and others smaller. > Here's a toy example: > > library(lattice); > > temp <- data.frame( > x = 1:10, > y = 1:10, > cex = rep( c(1,3), 5), > groups = c( rep("A", 5), rep("B", 5) ) > ); > > xyplot(y ~ x, temp, cex = temp$cex, pch = 19); > > This works just fine if I create a straight xy-plot, without groups. > However when I introduce groupings the cex argument specifies the > point-size for the entire group. For example: > > xyplot(y ~ x, temp, cex = temp$cex, pch = 19, group = groups); > > Is it possible to combine per-spot sizing with groups in some way? One > work-around is to manually specify all graphical parameters, but I thought > there might be a better way than this: > > temp$col <- rep("blue", 10); > temp$col[temp$groups == "B"] <- "red"; > xyplot(y ~ x, temp, cex = temp$cex, pch = 19, col = temp$col); > > Any suggestions/advice is much appreciated! > Paul > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.