eaxis {sfsmisc} | R Documentation |
An extended axis()
function which labels more
prettily, in particular for log-scale axes.
It makes use of plotmath expression
s of
the form k * 10^k for labeling a
log-scaled axis and when otherwise exponentional formatting would be
used.
eaxis(side, at = , labels = NULL, log = NULL, f.smalltcl = 3/5, at.small = NULL, small.mult = NULL, draw.between.ticks = TRUE, outer.at = TRUE, drop.1 = TRUE, las = 1, nintLog = max(10, par("lab")[2 - is.x]), max.at = Inf, ...)
side |
integer in 1:4, specifying side of |
at |
numeric vector of (“normalsized”) tick locations; by
default |
labels |
|
log |
logical or |
f.smalltcl |
factor specifying the lengths of the small ticks in proportion to the normalsized, labeled ticks. |
at.small |
locations of small ticks; the default,
|
small.mult |
positive integer (or |
draw.between.ticks |
(only if |
outer.at |
logical specifying that |
drop.1 |
logical specifying if |
nintLog |
only used in R > 2.13.x, when |
max.at |
maximal number of |
las, ... |
arguments passed to (the first) |
Martin Maechler
axis
,
axTicks
,
axTexpr
,
pretty10exp
.
x <- lseq(1e-10, 0.1, length = 201) plot(x, pt(x, df=3), type = "l", xaxt = "n", log = "x") eaxis(1) ## without small ticks: eaxis(3, at.small=FALSE, col="blue") ## If you like the ticks, but prefer traditional (non-"plotmath") labels: plot(x, gamma(x), type = "l", log = "x") eaxis(1, labels=NA) x <- lseq(.001, 0.1, length = 1000) plot(x, sin(1/x)*x, type = "l", xaxt = "n", log = "x") eaxis(1) ## non- log-scale : draw small ticks, but no "10^k" if not needed: x <- seq(-100, 100, length = 1000) plot(x, sin(x)/x, type = "l", xaxt = "n") eaxis(1) x <- seq(-1, 1, length = 1000) plot(x, sin(x)/x, type = "l", xaxt = "n") eaxis(1) x <- x/1000 plot(x, 1-sin(x)/x, type = "l", xaxt = "n", yaxt = "n") eaxis(1) eaxis(2) ## more labels than default: op <- par(lab=c(10,5,7)) plot(x, sin(x)/x, type = "l", xaxt = "n") eaxis(1) # maybe (depending on your canvas), there are too many, ## in that case, maybe use plot(x, sin(x)/x, type = "l", xaxt = "n") eaxis(1, axTicks(1)[c(TRUE,FALSE)]) # drop every 2nd label eaxis(3, labels=FALSE) ## ore use 'max.at' which thins as well: plot(x, sin(x)/x, type = "l", xaxt = "n") eaxis(1, max.at=6) par(op) ## From R version 2.14.0, on, this looks better