[R] Code scatter plot data from matrix with 3rd column
Rui Barradas
ruipbarradas at sapo.pt
Tue Jul 3 10:36:17 CEST 2012
Hello,
In order to avoid messing up the data, use dput. See below, in the end.
As for your question, try this:
set.seed(1234)
xyz <- data.frame(x=sample(20, 10), y=sample(20, 10), z=sample(0:1, 10,
TRUE))
# pch=16 --> solid circle; cex=4 --> 4 fold expansion
with(xyz, plot(x, y, col=z+1, pch=16, cex=4)) # color 0 is white
If you have a matrix, not a data.frame, don't use with(),
use xyz[, "x"], etc.
~~~~~~~~~~~~~~~~ The use of dput() ~~~~~~~~~~~~~~~~
dput(xyz)
structure(list(x = c(3L, 12L, 11L, 18L, 14L, 10L, 1L, 4L, 8L,
6L), y = c(14L, 11L, 6L, 16L, 5L, 13L, 17L, 4L, 3L, 12L), z = c(0L,
0L, 0L, 0L, 0L, 1L, 1L, 1L, 1L, 0L)), .Names = c("x", "y", "z"
), row.names = c(NA, -10L), class = "data.frame")
Now all anyone has to do is to copy that output, from 'structure' onward
and paste it in an R session. Try it, assign to a variable:
xyz2 <- structure(...etc...)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Hope this helps,
Rui Barradas
Em 02-07-2012 21:31, Kathryn B Walters-Conte escreveu:
> Hello
>
> I am looking for a simple way to plot my data from a matrix (or data frame) using a 3rd column as category to code the data points.
>
> for example:
> xyz
> 543240
> 104230
> 15901
> 203241
> 25781
> 3042340
> 357891
> 405670
> 45780
> 50531
>
> Ideally, I'd like 0 or 1 to correspond to a color but I'd settle for a symbol at this point. I have tried working with pch but can't get it to work.
>
> Thanks
> Kat
> [[alternative HTML version deleted]]
>
>
>
> ______________________________________________
> R-help at 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.
>
More information about the R-help
mailing list