[R] Axis/Ticks/Scale

Marc Schwartz (via MN) mschwartz at mn.rr.com
Wed Dec 28 22:46:37 CET 2005


On Wed, 2005-12-28 at 20:15 +0000, R.C.GILL at soton.ac.uk wrote:
> Dear All,
> 
> Apologies for this simple question and thanks in advance for any help
> given.
> 
> Suppose I wanted to plot 1 million observations and produce the
> command
> 
> plot(rnorm(1000000))
> 
> The labels of the xaxis are 0, e+00 2 e+05 etc. These are clearly not
> very
> attractive (The plots are for a PhD. thesis).
> 
> I would like the axes to be 0,2,4,6,8,10 with a *10^5 on the right
> hand
> side.
> 
> Is there a simple command for this?
> 
> Best Wishes
> 
> Roger


See ?plotmath for some additional examples and there are some others in
the list archives.

 set.seed(1)
 x <- rnorm(1000000)

 # Now do the plot, but leave the x axis blank
 plot(x, xaxt = "n")

 # Set the x axis label tick marks
 x.at <- seq(0, 10, 2) * 10 ^ 5

 # Create the expressions for the tick mark labels
 # Using parse() takes the character vectors from paste()
 # and converts them to expressions for use in plotmath
 x.lab <- parse(text = paste(seq(0, 10, 2), "%*% 10^5"))

 # Now do the axis labels
 axis(1, at = x.at, labels = x.lab)


HTH,

Marc Schwartz




More information about the R-help mailing list