box
function
The R box
function allows adding a box around plots. This is particularly useful when you add a new axis with the axis
function and want to draw the box again. You can also customize the color, the line type, the line width and even the type of the box.
Example 1. Adding a blue box to the plot. Note that we set axes = FALSE
to avoid displaying the default box and axes.
# Plot without axes
curve(cos, -10, 10, axes = FALSE)
# Blue dashed box
box(col = 4, lty = 2)
Example 2. Adding a box after modifying the axes with the axis
function.
# Plot without axes
curve(cos, -10, 10, axes = FALSE)
# Custom axis
axis(1, at = c(-2 * pi, pi, -pi, 0, 2 * pi),
labels = expression(-2 * pi, -pi, 0,
pi, 2 * pi))
axis(2, lwd = 2, lty = 2)
# Box with wide line
box(lwd = 2)
Example 3. Adding a box to the whole plot.
# Plot without axes
curve(cos, -10, 10)
# Border box
box("figure", col = 4, lwd = 4)
bty
argument
By default, base R plots have a box around them. This box can be customized with the bty
argument of the corresponding function. If the plotting function does not support this argument (like boxplot
) you can set it inside par
function.
Full box: bty = "o"
(Default)
curve(cos, -10, 10,
bty = "o")
Left and bottom: bty = "L"
curve(cos, -10, 10,
bty = "L")
Top, left and bottom: bty = "C"
curve(cos, -10, 10,
bty = "C")
Top and right: bty = "7"
curve(cos, -10, 10,
bty = "7")
Top, right and bottom: bty = "]"
curve(cos, -10, 10,
bty = "]")
Left, bottom and right: bty = "U"
curve(cos, -10, 10,
bty = "U")
No box: bty = "n"
curve(cos, -10, 10,
bty = "n")
The bty
argument can also be used within the box
function, which allows customizing the color, the type and the width of the box.
curve(cos, -10, 10,
axes = FALSE)
box(col = 2, bty = "U", lty = 2, lwd = 2)
As we pointed out before, with some functions you will need to specify the argument inside the par
function. As an example, if you want to draw a box plot without a box you can type:
par(bty = "n")
# Data
set.seed(1)
x <- rnorm(50)
# Plot
boxplot(x)
Note that "o"
, "7"
, "]"
, "L"
and "U"
represent the sides of the box that are actually drawn. This is a good way to remember them. You can also set the letters in lower case instead of in upper case.
See also