# [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

```