text {graphics} | R Documentation |

`text`

draws the strings given in the vector `labels`

at the
coordinates given by `x`

and `y`

.
`y`

may be missing since `xy.coords(x,y)`

is used for
construction of the coordinates.

text(x, ...) ## Default S3 method: text (x, y = NULL, labels = seq(along = x), adj = NULL, pos = NULL, offset = 0.5, vfont = NULL, cex = 1, col = NULL, font = NULL, xpd = NULL, ...)

`x, y` |
numeric vectors of coordinates where the text
`labels` should be written. If the length of `x` and
`y` differs, the shorter one is recycled. |

`labels` |
one or more character strings or expressions specifying
the text to be written. An attempt is made to coerce other
vectors (and factors) to character, and other language objects
to expressions. If `labels` is longer than `x` and
`y` , the coordinates are recycled to the length of `labels` . |

`adj` |
one or two values in [0,1] which specify the x
(and optionally y) adjustment of the labels. On most devices values
outside that interval will also work. |

`pos` |
a position specifier for the text. If specified this
overrides any `adj` value given. Values of `1` ,
`2` , `3` and `4` , respectively indicate
positions below, to the left of, above and to the right of
the specified coordinates. |

`offset` |
when `pos` is specified, this value gives the
offset of the label from the specified coordinate in fractions
of a character width. |

`vfont` |
if a character vector of length 2 is specified, then Hershey vector fonts are used. The first element of the vector selects a typeface and the second element selects a style. |

`cex` |
numeric character expansion factor; multiplied
by `par("cex")` yields the final character size.
`NULL` and `NA` are equivalent to `1.0` . |

`col, font` |
the color and font to be used; these default to the
values of the global graphical parameters in `par()` . |

`xpd` |
(where) should clipping take place? Defaults to
`par("xpd")` . |

`...` |
further graphical parameters (from `par` ). |

`labels`

must be of type `character`

or
`expression`

(or be coercible to such a type).
In the latter case, quite a bit of
mathematical notation is available such as sub- and superscripts,
greek letters, fractions, etc.

`adj`

allows *adj*ustment of the text with respect to `(x,y)`

.
Values of 0, 0.5, and 1 specify left/bottom, middle and
right/top, respectively. The default is for centered text, i.e.,
`adj = c(0.5, 0.5)`

. Accurate vertical centering needs
character metric information on individual characters, which is
only available on some devices.

The `pos`

and `offset`

arguments can be used in conjunction
with values returned by `identify`

to recreate an interactively
labelled plot.

Text can be rotated by using graphical parameters `srt`

(see
`par`

); this rotates about the centre set by `adj`

.

Graphical parameters `col`

, `cex`

and `font`

can be
vectors and will then be applied cyclically to the `labels`

(and
extra values will be ignored). `NA`

values of `font`

are
replaced by `par("font")`

.

Labels whose `x`

, `y`

, `labels`

, `cex`

or `col`

value is `NA`

are omitted from the plot.

The Euro symbol was introduced relatively recently, and may not be
available in older fonts. In recent versions of Adobe symbol fonts it
is character 160, so `text(x, y, "\xA0", font = 5)`

will work.
People using Western European locales on Unix-alikes can probably
select ISO-8895-15 (Latin-9) which has the Euro as character 165: this
can also be used for `postscript`

and `pdf`

.

The Euro should be rendered correctly by `link{X11}`

in UTF-8
locales, but the corresponding single-byte encoding in
`postscript`

and `pdf`

will be to be selected
as `ISOLatin9.enc`

.

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
*The New S Language*.
Wadsworth & Brooks/Cole.

`mtext`

, `title`

,
`Hershey`

for details on Hershey vector fonts,
`plotmath`

for details and more examples on
mathematical annotation.

plot(-1:1,-1:1, type = "n", xlab = "Re", ylab = "Im") K <- 16; text(exp(1i * 2 * pi * (1:K) / K), col = 2) ## The following two examples use latin1 characters: these may not ## appear correctly (or be omitted entirely). plot(1:10, 1:10, main = "text(...) examples\n~~~~~~~~~~~~~~", sub = "R is GNU ©, but not ® ...") mtext("«Latin-1 accented chars»: éè øØ å<Å æ<Æ", side=3) points(c(6,2), c(2,1), pch = 3, cex = 4, col = "red") text(6, 2, "the text is CENTERED around (x,y) = (6,2) by default", cex = .8) text(2, 1, "or Left/Bottom - JUSTIFIED at (2,1) by 'adj = c(0,0)'", adj = c(0,0)) text(4, 9, expression(hat(beta) == (X^t * X)^{-1} * X^t * y)) text(4, 8.4, "expression(hat(beta) == (X^t * X)^{-1} * X^t * y)", cex = .75) text(4, 7, expression(bar(x) == sum(frac(x[i], n), i==1, n))) ## Two more latin1 examples text(5,10.2, "Le français, c'est façile: Règles, Liberté, Egalité, Fraternité...") text(5,9.8, "Jetz no chli züritüütsch: (noch ein bißchen Zürcher deutsch)")

[Package *graphics* version 2.2.1 Index]