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 = axTicks(side, log=log), labels = NULL, log = NULL, f.smalltcl = 3/5, at.small = NULL, small.mult = NULL, outer.at = TRUE, drop.1 = TRUE, las = 1, ...)
side |
integer in 1:4, specifying side of axis . |
at |
numeric vector of (“normalsized”) tick locations; by
default axTicks(side) , i.e., the same as
axis() would use. |
labels |
NULL (default), logical ,
character or expression , as in axis() ;
in addition, if NA , labels = TRUE is passed to
axis() , i.e. pretty10exp is not
used. Use FALSE to suppress any labeling. |
log |
logical or NULL specifying if log-scale should be
used; the default depends on the current plot's axis. |
f.smalltcl |
factor specifying the lengths of the small ticks in proportion to the normalsized, labeled ticks. |
at.small |
locations of small ticks; default uses used as “small ticks”. |
small.mult |
which multiples of axTicks() should be
used as “small ticks” by default. |
outer.at |
logical specifying that at.small should also be
constructed outside the at range, but still inside the
corresponding par("usr") . |
drop.1 |
logical specifying if "1 *" should be dropped
from labels, passed to pretty10exp() . |
las, ... |
arguments passed to (the first) axis
call. Note that the default las = 1 differs from
axis 's default las = 0 . |
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) ## 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) par(op)