R: Draw Text

grid.text {grid} | R Documentation

## Draw Text

### Description

These functions create and draw text and plotmath expressions.

### Usage

    grid.text(label, x = unit(0.5, "npc"), y = unit(0.5, "npc"),
              just = "centre", hjust = NULL, vjust = NULL, rot = 0,
              check.overlap = FALSE, default.units = "npc",
              name = NULL, gp = gpar(), draw = TRUE, vp = NULL)

    textGrob(label, x = unit(0.5, "npc"), y = unit(0.5, "npc"),
              just = "centre", hjust = NULL, vjust = NULL, rot = 0,
              check.overlap = FALSE, default.units = "npc",
              name = NULL, gp = gpar(), vp = NULL)

### Arguments

`label` | A character or expression vector. Other objects are coerced by `as.graphicsAnnot`.
`x` | A numeric vector or unit object specifying x-values.
`y` | A numeric vector or unit object specifying y-values.
`just` | The justification of the text relative to its (x, y) location. If there are two values, the first value specifies horizontal justification and the second value specifies vertical justification. Possible string values are: `"left"`, `"right"`, `"centre"`, `"center"`, `"bottom"`, and `"top"`. For numeric values, 0 means left (bottom) alignment and 1 means right (top) alignment.
`hjust` | A numeric vector specifying horizontal justification. If specified, overrides the `just` setting.
`vjust` | A numeric vector specifying vertical justification. If specified, overrides the `just` setting.
`rot` | The angle to rotate the text.
`check.overlap` | A logical value to indicate whether to check for and omit overlapping text.
`default.units` | A string indicating the default units to use if `x` or `y` are only given as numeric vectors.
`name` | A character identifier.
`gp` | An object of class `"gpar"`, typically the output from a call to the function `gpar`. This is basically a list of graphical parameter settings.
`draw` | A logical value indicating whether graphics output should be produced.
`vp` | A Grid viewport object (or NULL).

### Details

Both functions create a text grob (a graphical object describing text), but only `grid.text` draws the text (and then only if `draw` is `TRUE`).

If the `label` argument is an expression, the output is formatted as a mathematical annotation, as for base graphics text.

### Value

A text grob. `grid.text()` returns the value invisibly.

### Author(s)

Paul Murrell

### See Also

Grid, `viewport`

### Examples

    grid.newpage()
    x <- stats::runif(20)
    y <- stats::runif(20)
    rot <- stats::runif(20, 0, 360)
    grid.text("SOMETHING NICE AND BIG", x=x, y=y, rot=rot,
              gp=gpar(fontsize=20, col="grey"))
    grid.text("SOMETHING NICE AND BIG", x=x, y=y, rot=rot,
              gp=gpar(fontsize=20), check=TRUE)
    grid.newpage()
    draw.text <- function(just, i, j) {
      grid.text("ABCD", x=x[j], y=y[i], just=just)
      grid.text(deparse(substitute(just)), x=x[j], y=y[i] + unit(2, "lines"),
                gp=gpar(col="grey", fontsize=8))
    }
    x <- unit(1:4/5, "npc")
    y <- unit(1:4/5, "npc")
    grid.grill(h=y, v=x, gp=gpar(col="grey"))
    draw.text(c("bottom"), 1, 1)
    draw.text(c("left", "bottom"), 2, 1)
    draw.text(c("right", "bottom"), 3, 1)
    draw.text(c("centre", "bottom"), 4, 1)
    draw.text(c("centre"), 1, 2)
    draw.text(c("left", "centre"), 2, 2)
    draw.text(c("right", "centre"), 3, 2)
    draw.text(c("centre", "centre"), 4, 2)
    draw.text(c("top"), 1, 3)
    draw.text(c("left", "top"), 2, 3)
    draw.text(c("right", "top"), 3, 3)
    draw.text(c("centre", "top"), 4, 3)
    draw.text(c(), 1, 4)
    draw.text(c("left"), 2, 4)
    draw.text(c("right"), 3, 4)
    draw.text(c("centre"), 4, 4)

[Package grid version 4.0.5 Index]