From: Adaikalavan Ramasamy <ramasamy_at_cancer.org.uk>

Date: Tue 09 Aug 2005 - 10:01:40 EST

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Aug 09 10:06:05 2005

Date: Tue 09 Aug 2005 - 10:01:40 EST

Remove the '6' from the code that contains 'cut'. I am not sure how it crept into my code. Then you should have the following mapping

Freq pch code 1-5 1 6-10 2 11- 3

I am more concerned about viewers getting confused with many symbols than running out of symbols in R. Looking at the last example in help("points"), I would say that there are 20-30 usable symbols. Remember that you can also use text() to put multi-character text.

Regards, Adai

On Mon, 2005-08-08 at 13:42 -0700, Kerry Bush wrote:

> Thank you.

*>
**> But I only need three classes of freqnencies (in
**> another words, only three kinds of symbols) for 1-5,
**> 5-10 and above 10, not to use different symbols for
**> different frequencies. Otherwise, clearly R will run
**> out of available symbols and the plot is also hard to
**> view.
**>
**> Thank you anyway.
**>
**> --- Adaikalavan Ramasamy <ramasamy@cancer.org.uk>
**> wrote:
**>
**> > Group by which variable ? If you mean the joint
**> > distribution of 'x' and
**> > 'y' then something along the following lines
**> >
**> > x <- rep( c(0.1, 0.2, 0.4, 0.5), c(5, 6, 10,
**> > 20) )
**> > y <- rep( c(0.5, 0.6, 1.2, 2.5, 3.0), c(3, 8, 8,
**> > 18, 4) )
**> >
**> > new <- factor( paste(x, y, sep="_") )
**> > tb <- table(new)
**> >
**> > pchcode <- cut(tb , c(-Inf, 1, 5, 6, 10, Inf),
**> > labels=F)
**> >
**> > tmp <- t( sapply( strsplit( names(tb),
**> > split="_") , c ) )
**> > df <- data.frame( x=tmp[ ,1], y=tmp[ ,2],
**> > freq=as.vector(tb), pchcode
**> > = pchcode -1 )
**> >
**> > x y freq pchcode
**> > 1 0.1 0.5 3 1
**> > 2 0.1 0.6 2 1
**> > 3 0.2 0.6 6 2
**> > 4 0.4 1.2 8 3
**> > 5 0.4 2.5 2 1
**> > 6 0.5 2.5 16 4
**> > 7 0.5 3 4 1
**> >
**> > And now to plot it, we use points() repeatedly.
**> >
**> > plot( as.numeric(df$x), as.numeric(df$y), type="n"
**> > )
**> >
**> > for( i in unique( df$pchcode ) ){
**> > w <- which( df$pchcode == i )
**> > points( df$x[w], df$y[w], pch=as.numeric(i) )
**> > }
**> >
**> > I am sure someone else will come up with a neater
**> > solution.
**> >
**> >
**> > Can I also suggest that you try the following
**> >
**> > plot( jitter(x), jitter(y) )
**> >
**> > or better still the following
**> >
**> > library(hexbin)
**> > plot( hexbin(x, y) )
**> >
**> >
**> > Regards, Adai
**> >
**> > On Mon, 2005-08-08 at 11:57 -0700, Kerry Bush wrote:
**> > > suppose I have the following data
**> > >
**> > > x<-c(rep(.1,5),rep(.2,6),rep(.4,10),rep(.5,20))
**> > >
**> >
**> y<-c(rep(.5,3),rep(.6,8),rep(1.2,8),rep(2.5,18),rep(3,4))
**> > >
**> > > If I plot(x,y) in R, I will only get seven
**> > distinct
**> > > points. What I want to do is to use different
**> > symbols
**> > > to show the frequency at each point.
**> > >
**> > > e.g. if the frequncey is between 1 and 5, then I
**> > plot
**> > > the point as a circle; if the frequency is between
**> > 6
**> > > and 10, then I plot the point as a square; if the
**> > > frequency is above 10, then I plot the point as a
**> > > triangle.
**> > >
**> > > I am not sure how to do this in R. Can anybody
**> > help me?
**> > >
**> > > ______________________________________________
**> > > R-help@stat.math.ethz.ch mailing list
**> > > https://stat.ethz.ch/mailman/listinfo/r-help
**> > > PLEASE do read the posting guide!
**> > http://www.R-project.org/posting-guide.html
**> > >
**> >
**> >
**>
**>
**> __________________________________________________
**> Do You Yahoo!?
**> Tired of spam? Yahoo! Mail has the best spam protection around
**> http://mail.yahoo.com
*

>

R-help@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Aug 09 10:06:05 2005

*
This archive was generated by hypermail 2.1.8
: Sun 23 Oct 2005 - 15:10:17 EST
*