Самой основной графической функцией в R является plot
функция. Эта функция имеет несколько аргументов для настройки конечного графика: добавление заголовка, изменение меток осей, настройка цветов или изменение типов линий, среди прочего. В этом уроке вы узнаете, как строить в R и как полностью настроить результирующий график.
Функция построения графика в R
Функция R plot
позволяет создавать график, передающий два вектора (одинаковой длины), фрейм данных, матрицу или даже другие объекты, в зависимости от его класса или типа ввода. Мы собираемся смоделировать две случайные нормальные переменные, называемые x
и y
, и использовать их почти во всех примерах построения графика.
Пример данныхset.seed(1)
# Generate sample data
x <- rnorm(500)
y <- x + rnorm(500)
Вы можете создать график предыдущего ввода данных:
# Plot the data
plot(x, y)
# Equivalent
M <- cbind(x, y)
plot(M)
С помощью plot
функции вы можете создавать широкий спектр графиков в зависимости от входных данных. В следующей таблице мы суммируем все доступные возможности для базовой функции построения графика R.
Функция и аргументы | Выходной график |
---|---|
построение графика (x, y) | Диаграмма рассеяния числовых векторов x и y |
построение (коэффициент) | Гистограмма фактора |
построение графика (коэффициент, y) | Прямоугольная диаграмма числового вектора и уровней коэффициента |
построение (time_series) | Построение временных рядов |
построение (data_frame) | График корреляции всех столбцов фрейма данных (более двух столбцов) |
построение графика (дата, год) | Построение вектора на основе даты |
построение графика (функция, нижний, верхний) | Построение графика функции между заданным меньшим и максимальным значением |
Если вы выполните следующий код, вы получите разные примеры построения графика.
# Examples
par(mfrow = c(2, 3))
# Data
my_ts <- ts(matrix(rnorm(500), nrow = 500, ncol = 1),
start = c(1950, 1), frequency = 12)
my_dates <- seq(as.Date("2005/1/1"), by = "month", length = 50)
my_factor <- factor(mtcars$cyl)
fun <- function(x) x^2
# Scatterplot
plot(x, y, main = "Scatterplot")
# Barplot
plot(my_factor, main = "Barplot")
# Boxplot
plot(my_factor, rnorm(32), main = "Boxplot")
# Time series plot
plot(my_ts, main = "Time series")
# Time-based plot
plot(my_dates, rnorm(50), main = "Time based plot")
# Plot R function
plot(fun, 0, 10, main = "Plot a function")
# Correlation plot
plot(trees[, 1:3], main = "Correlation plot")
par(mfrow = c(1, 1))
Когда вы создаете несколько графиков в R base (не в RStudio), следующий график переопределяет предыдущий. Однако для решения этой проблемы можно создать новые окна построения с
windowsX11quartz
функциями и в зависимости от вашей операционной системы.
Окно R
При создании графиков в R base они будут открыты в новом окне. Однако может потребоваться настроить высоту и ширину окна, которая по умолчанию равна 7 дюймам (17,78 см). Для этой цели вы можете использовать аргументы height
и width
следующих функций, в зависимости от вашей системы.
Следует отметить, что в RStudio график будет отображаться в макете панели, но если вы используете соответствующую функцию, график откроется в новом окне, как и в R base.
windows() # Windows
X11() # Unix
quartz() # Mac
В дополнение к возможности открывать и устанавливать размер окна, эти функции используются, чтобы избежать переопределения создаваемых вами графиков, поскольку при создании нового графика вы потеряете предыдущий. Обратите внимание, что в RStudio вы можете перемещаться по всем графикам, созданным вами в сеансе, на панели “Графики”.
# First plot will open
# a new window
plot(x, y)
# New window
windows()
# Other plot in new window
plot(x, x)
Вы также можете очистить окно построения в R программно с dev.off
помощью функции, чтобы очистить текущее окно и с graphics.off
помощью, чтобы очистить все графики и восстановить графические параметры по умолчанию.
# Clear the current plot
dev.off()
# Clear all the plots
graphics.off()
while (dev.cur() > 1) dev.off() # Equivalent
Обратите внимание, что dev.cur
функция подсчитывает количество доступных графических устройств.
R тип графика
Вы также можете настроить тип графика с type
помощью аргумента. Выбор типа будет зависеть от данных, которые вы строите. В следующем блоке кода мы показываем наиболее популярные типы графиков в R.
j <- 1:20
k <- j
par(mfrow = c(1, 3))
plot(j, k, type = "l", main = "type = 'l'")
plot(j, k, type = "s", main = "type = 's'")
plot(j, k, type = "p", main = "type = 'p'")
par(mfrow = c(1, 1))
par(mfrow = c(1, 3))
plot(j, k, type = "l", main = "type = 'o'")
plot(j, k, type = "s", main = "type = 'b'")
plot(j, k, type = "p", main = "type = 'h'")
par(mfrow = c(1, 1))
Тип графика | Описание |
---|---|
p | Построение точек (по умолчанию) |
l | Линейный график |
b | Оба (точки и линия) |
o | Оба (с наложением) |
s | График лестницы |
h | Гистограммоподобный график |
n | Нет построения графика |
R построение графика pch
pch
Аргумент позволяет изменять символ точек на графике. Основные символы можно выбрать, передав числа от 1 до 25 в качестве параметров. Вы также можете изменить размер символов с cex
помощью аргумента и ширину строки символов (кроме 15-18) с lwd
помощью аргумента.
r <- c(sapply(seq(5, 25, 5), function(i) rep(i, 5)))
t <- rep(seq(25, 5, -5), 5)
plot(r, t, pch = 1:25, cex = 3, yaxt = "n", xaxt = "n",
ann = FALSE, xlim = c(3, 27), lwd = 1:3)
text(r - 1.5, t, 1:25)
Обратите внимание, что символы с 21 по 25 позволяют задать ширину границы, а также цвет фона с lwd
аргументами и bg
соответственно.
plot(r, t, pch = 21:25, cex = 3, yaxt = "n", xaxt = "n", lwd = 3,
ann = FALSE, xlim = c(3, 27), bg = 1:25, col = rainbow(25))
Простой пример:
# Example
plot(x, y, pch = 21,
bg = "red", # Fill color
col = "blue", # Border color
cex = 3, # Symbol size
lwd = 3) # Border width
Стоит отметить, что в качестве символа можно использовать любой символ. Фактически, некоторые символьные символы могут быть выбраны с использованием чисел от 33 до 240 в качестве параметра pch
аргумента.
# Custom symbols
plot(1:5, 1:5, pch = c("☺", "❤", "✌", "❄", "✈"),
col = c("orange", 2:5), cex = 3,
xlim = c(0, 6), ylim = c(0, 6))
R заголовок графика
Заголовок может быть добавлен к графику с main
помощью аргумента или title
функции.
plot(x, y, main = "My title")
# Equivalent
plot(x, y)
title("My title")
Основное различие между использованием title
функции или аргумента заключается в том, что аргументы, которые вы передаете функции, влияют только на заголовок.
Чтобы изменить положение заголовка графика, вы можете задать adj
аргумент со значением от 0 (слева) до 1 (справа) и line
аргумент, в котором значения больше 1,7 (по умолчанию) перемещают заголовок вверх, а значения меньше 1,7 – вниз. Отрицательные значения line
приведут к тому, что заголовок войдет в сюжет. Следует отметить, что если вы зададите эти аргументы plot
функции, изменения будут применены ко всем текстам.
plot(x, y)
title("My title",
adj = 0.75, # Title to the right
line = 0.25)
Латекс в заголовке графика
Для специалистов по обработке данных очень часто возникает необходимость отображения математических выражений в заголовке графиков. Для этой цели вы можете использовать expression
функцию. Вы можете просмотреть все доступные варианты использования вызова математической нотации, подобной LaTeX ?plotmath
.
plot(x, y, main = expression(alpha[1] ^ 2 + frac(beta, 3)))
Тем не менее, синтаксис функции сильно отличается от синтаксиса LaTeX. Если вы предпочитаете, вы можете использовать TeX
функцию latex2exp
пакета. Однако обратите внимание, что эта функция преобразует нотацию TeX в expression
функциональную нотацию, поэтому доступные символы и обозначения одинаковы в обеих функциях.
# install.packages("latex2exp")
library(latex2exp)
plot(x, y, main = TeX('$\\beta^3, \\beta \\in 1 \\ldots 10$'))
Выражения LaTeX можно использовать также в субтитрах, метках осей или в любом другом месте, в качестве текста, добавляемого к графику.
Субтитры в R plot
Кроме того, вы можете добавить субтитры к графику в R с sub
аргументом, который будет отображаться под графиком. Можно добавить подзаголовок, даже если вы не указываете заголовок.
plot(x, y, main = "My title", sub = "My subtitle")
# Equivalent
plot(x, y)
title(main = "My title", sub = "My subtitle")
Ось в R
В R plots вы можете изменять метки осей Y и X, добавлять и изменять метки осей, размер оси и даже устанавливать ограничения оси.
R нанесите метки x и y
По умолчанию R будет использовать имена векторов вашего графика в качестве меток осей X и Y. Однако вы можете изменить их с помощью xlab и ylab
аргументов.
plot(x, y, xlab = "My X label", ylab = "My Y label")
Если вы хотите удалить метки осей, вы можете присвоить им пустую строку или задать ann
аргумент равным FALSE
.
# Delete labels
plot(x, y, xlab = "", ylab = "")
# Equivalent
plot(x, y, xlab = "My X label", ylab = "My Y label", ann = FALSE)
Функция оси R
Аргумент axesplot
функции может быть установлен на
, чтобы избежать отображения осей, поэтому, если вы хотите, вы можете добавить только одну из них сFALSE
помощью axis
функции и настроить ее. Передача 1
в качестве аргумента приведет к построению оси X, передача 2
– к построению оси Y, 3
для верхней оси и 4
для правой оси.
plot(x, y, axes = FALSE)
# Add X-axis
axis(1)
# Add Y-axis
axis(2)
Изменение отметок оси
Также можно изменить отметки осей. С одной стороны, at
аргумент axis
функции позволяет указать точки, в которых будут нарисованы метки.
plot(x, y, axes = FALSE)
axis(1, at = -2:2)
С другой стороны, minor.tick
функция Hmisc
пакета позволяет создавать меньшие отметки между основными отметками.
# install.packages("Hmisc")
library(Hmisc)
plot(x, y)
minor.tick(nx = 3, ny = 3, tick.ratio = 0.5)
Наконец, вы можете создать внутренние галочки, указав положительное число в tck
аргументе следующим образом:
# Interior ticks
plot(x, y, tck = 0.02)
Удаление меток оси
Установка аргументов xaxt
или yaxt
в "n"plot
функции позволит избежать построения меток осей X и Y соответственно.
par(mfrow = c(1, 3))
# Remove X axis tick labels
plot(x, y, xaxt = "n", main = "xaxt = 'n'")
# Remove Y axis tick labels
plot(x, y, yaxt = "n", main = "yaxt = 'n'")
# Remove both axis tick labels
plot(x, y, yaxt = "n", xaxt = "n", main = "xaxt = 'n', yaxt = 'n'")
par(mfrow = c(1, 1))
Изменение меток оси
Метки меток осей будут пронумерованы в соответствии с нумерацией ваших данных. Тем не менее, вы можете изменить метки меток, если это необходимо, с labels
помощью аргумента axis
функции. Вам также нужно будет указать, где будут отображаться метки тиков с at
аргументом.
par(mfrow = c(1, 2))
# Change X axis tick labels
plot(x, y, xaxt = "n")
axis(1, at = seq(round(min(x)), round(max(x)), by = 1), labels = 1:8)
# Change Y axis tick labels
plot(x, y, yaxt = "n")
axis(2, at = seq(round(min(y)), round(max(y)), by = 1), labels = 1:9)
Поворот меток осей
las
Аргумент plot
функции в R позволяет поворачивать метки осей ваших графиков. В следующем блоке кода вы найдете объяснение различных альтернатив.
par(mfrow = c(2, 2))
plot(x, y, las = 0, main = "Parallel") # Parallel to axis (default)
plot(x, y, las = 1, main = "Horizontal") # Horizontal
plot(x, y, las = 2, main = "Perpendicular") # Perpendicular to axis
plot(x, y, las = 3, main = "Vertical") # Vertical
par(mfrow = c(1, 1))
Установите границы оси
Вы можете увеличивать или уменьшать масштаб графика, изменяя пределы R осей графика.Эти аргументы очень полезны, чтобы избежать обрезки линий при добавлении их на график.
plot(x, y,
ylim = c(-8, 8), # Y-axis limits from -8 to 8
xlim = c(-5, 5)) # X-axis limits from -5 to 5
Изменение масштаба оси в R
log
Аргумент позволяет изменять масштаб осей графика. Вы можете преобразовать ось X, ось Y или обе следующим образом:
# New data to avoid negative numbers
s <- 1:25
u <- 1:25
par(mfrow = c(2, 2))
# Default
plot(s, u, pch = 19,
main = "Untransformed")
# Log scale. X-axis
plot(s, u, pch = 19, log = "x",
main = "X-axis transformed")
# Log scale. Y-axis
plot(s, u, pch = 19, log = "y",
main = "Y-axis transformed")
# Log scale. X and Y axis
plot(s, u, pch = 19, log = "xy",
main = "Both transformed")
Журнал | Преобразование |
---|---|
“x” | Ось X преобразована |
“y” | Ось Y преобразована |
“xy” | Обе оси преобразованы |
Однако вы можете подумать, что использование log
функции эквивалентно, но это не так. Как вы можете видеть на предыдущем графике, использование log
аргумента не изменяет данные, но log
функция преобразует их. Посмотрите на разницу между осями следующего графика и осями предыдущего.
par(mfrow = c(1, 3))
# Log-log
plot(log(s), log(u), pch = 19,
main = "log-log")
# log(x)
plot(log(s), u, pch = 19,
main = "log(x)")
# log(y)
plot(s, log(u), pch = 19,
main = "log(y)")
par(mfrow = c(1, 1))
R нанесение шрифта
Размер шрифта
Вы также можете изменить размер шрифта на графике в формате R с cex.main
помощью аргументов , cex.sub
, cex.lab
и cex.axis
, чтобы изменить заголовок, субтитры, метки осей X и Y и метки меток осей соответственно. Обратите внимание, что при больших значениях текст будет отображаться более крупным.
plot(x, y, main = "My title", sub = "Subtitle",
cex.main = 2, # Title size
cex.sub = 1.5, # Subtitle size
cex.lab = 3, # X-axis and Y-axis labels size
cex.axis = 0.5) # Axis labels size
Аргумент | Описание |
---|---|
cex.главная | Задает размер заголовка |
cex.sub | Задает размер субтитра |
cex.lab | Задает размер меток по осям X и Y |
cex.ось | Задает размер меток оси тиков |
Стиль шрифта
Кроме того, вы можете изменить стиль шрифта R графиков с font
помощью аргумента. Вы можете установить для этого аргумента значение 1 для обычного текста, 2 для жирного шрифта (по умолчанию), 3 курсивом и 4 для жирного курсива. Этот аргумент не изменит стиль заголовка.
par(mfrow = c(1, 3))
plot(x, y, font = 2, main = "Bold") # Bold
plot(x, y, font = 3, main = "Italics") # Italics
plot(x, y, font = 4, main = "Bold italics") # Bold italics
par(mfrow = c(1, 1))
Вы также можете указать стиль каждого из текстов сюжета с font.main
помощью аргументов , font.sub
, font.axis
и font.lab
.
plot(x, y,
main = "My title",
sub = "Subtitle",
font.main = 1, # Title font style
font.sub = 2, # Subtitle font style
font.axis = 3, # Axis tick labels font style
font.lab = 4) # Font style of X and Y axis labels
Note that, by default, the title of a plot is in bold.
Стиль шрифта | Описание |
---|---|
1 | Обычный текст |
2 | Жирный шрифт |
3 | Курсивом |
4 | Жирный курсив |
Семейство шрифтов
family
Аргумент позволяет изменять семейство шрифтов текстов сюжета. Вы даже можете добавить больше текста с помощью других семейств шрифтов. Обратите внимание, что вы можете просмотреть полный список доступных шрифтов в R с names(pdfFonts())
помощью команды, но некоторые из них могут быть не установлены на вашем компьютере.
# All available fonts
names(pdfFonts())
plot(x, y, family = "mono")
text(-2, 3, "Some text", family = "sans")
text(-2, 2, "More text", family = "serif")
text(1, -4, "Other text", family = "HersheySymbol")
Альтернативным вариантом является использование extrafont
пакета.
# install.packages("extrafont")
library(extrafont)
# Auto detect the available fonts in your computer
# This can take several minutes to run
font_import()
# Font family names
fonts()
# Data frame containing the font family names
fonttable()
R цвет графика
В разделе о pch
символах мы объяснили, как задать col
аргумент, который позволяет изменять цвет символов построения. В R существует большое разнообразие цветовых палитр. С помощью этой colors
функции вы можете вернуть все доступные базовые цвета R. Кроме того, вы можете использовать grep
функцию (функцию регулярного выражения) для возврата вектора цветов, содержащего некоторую строку.
# Return all colors
colors()
# Return all colors that contain the word 'green'
cl <- colors()
cl[grep("green", cl)]
# Plot with blue dots
plot(x, y, col = "blue")
plot(x, y, col = 4) # Equivalent
plot(x, y, col = "#0000FF") # Equivalent
Вы можете указать цвета с его именем ("red"
, "green"
, …), с цифрами (от 1 до 8) или даже с его шестнадцатеричной ссылкой ("#FF0000"
, "#0000FF"
, …).
Вы также можете изменять цвета текста с col.main
помощью функций , col.sub
, col.lab
и col.axis
и даже изменять цвет поля с fg
помощью аргумента.
plot(x, y, main = "Title", sub = "Subtitle",
pch = 16,
col = "red", # Symbol color
col.main = "green", # Title color
col.sub = "blue", # Subtitle color
col.lab = "sienna2", # X and Y-axis labels color
col.axis = "maroon4", # Tick labels color
fg = "orange") # Box color
Нанесение цветных точек по группам
Если у вас есть числовые переменные, помеченные группой, вы можете нанести точки данных, разделенные цветом, передав категориальную переменную (как фактор) в col
аргумент. Цвета будут зависеть от факторов.
# Create dataframe with groups
group <- ifelse(x < 0 , "car", ifelse(x > 1, "plane", "boat"))
df <- data.frame(x = x, y = y, group = factor(group))
# Color by group
plot(df$x, df$y, col = df$group, pch = 16)
# Change group colors
colors <- c("red", "green", "blue")
plot(df$x, df$y, col = colors[df$group], pch = 16)
# Change color order, changing levels order
plot(df$x, df$y, col = colors[factor(group, levels = c("car", "boat", "plane"))],
pch = 16)
Обратите внимание, что по умолчанию уровни факторов упорядочены в алфавитном порядке, поэтому в этом случае порядок вектора цветов не является порядком цветов на графике, поскольку первая строка фрейма данных соответствует “car”, то есть второму уровню. Следовательно, если вы измените порядок уровней, вы можете изменить порядок цветов.Начиная с R 4.0.0stringAsFactors
, аргумент data.frame
функции – FALSE
по умолчанию, поэтому вам нужно будет преобразовать категориальную переменную в фактор, чтобы раскрасить наблюдения по группам, как в предыдущем примере.
Цвет фона
Существует два способа изменить цвет фона R диаграмм: изменить весь цвет или изменить цвет фона рамки. Чтобы изменить полный цвет фона, вы можете использовать следующую команду:
# Light gray background color
par(bg = "#f7f7f7")
# Add the plot
plot(x, y, col = "blue", pch = 16)
# Back to the original color
par(bg = "white")
Однако результат будет более красивым, если только поле будет окрашено в определенный цвет, хотя для этого требуется больше кода. Обратите внимание, что plot.new
функция позволяет создавать пустой график в R, и это par (new = TRUE)
позволяет добавлять один график поверх другого.
# Create an empty plot
plot.new()
rect(par("usr")[1], par("usr")[3],
par("usr")[2], par("usr")[4],
col = "#f7f7f7") # Color
par(new = TRUE)
plot(x, y, col = "blue", pch = 16)
R построение линии
Вы можете добавить линию к графику в R с lines
помощью функции. Предположим, например, что вы хотите добавить красную линию к графику от (-4, -4) до (4, 4), чтобы вы могли написать:
plot(x, y)
lines(-4:4, -4:4, lwd = 3, col = "red")
R ширина линии построения
Ширина линии в R может быть изменена с lwd
помощью аргумента, где большие значения будут отображать более широкую линию.
M <- matrix(1:36, ncol = 6)
matplot(M, type = c("l"), lty = 1, col = "black", lwd = 1:6)
# Just to indicate the line widths in the plot
j <- 0
invisible(sapply(seq(4, 40, by = 6),
function(i) {
j <<- j + 1
text(2, i, paste("lwd =", j))}))
Тип линии построения
При построении графика типа “l”, “o”, “b”, “s” или при добавлении новой линии поверх графика можно выбирать между различными типами линий, задав lty
аргумент от 0 до 6.
matplot(M, type = c("l"), lty = 1:6, col = "black", lwd = 3)
# Just to indicate the line types in the plot
j <- 0
invisible(sapply(seq(4, 40, by = 6),
function(i) {
j <<- j + 1
text(2, i, paste("lty =", j))}))
Тип | Описание |
---|---|
0 | Пусто |
1 | Сплошная линия (по умолчанию) |
2 | Пунктирная линия |
3 | Пунктирная линия |
4 | Пунктирная линия |
5 | Линия с длинной чертой |
6 | Линия с двумя штрихами |
Добавление текста для построения графика в R
С одной стороны, mtext
функция в R позволяет добавлять текст на все стороны поля построения. Существует 12 комбинаций (по 3 с каждой стороны прямоугольника, при выравнивании по левому краю, центру и правому краю). Вам просто нужно изменить side
и adj
, чтобы получить нужную вам комбинацию.
On the other, the text
function allows you to add text or formulas inside the plot at some position setting the coordinates. In the following code block some examples are shown for both functions.
plot(x, y, main = "Main title", cex = 2, col = "blue")
#---------------
# mtext function
#---------------
# Bottom-center
mtext("Bottom text", side = 1)
# Left-center
mtext("Left text", side = 2)
# Top-center
mtext("Top text", side = 3)
# Right-center
mtext("Right text", side = 4)
# Bottom-left
mtext("Bottom-left text", side = 1, adj = 0)
# Top-right
mtext("Top-right text", side = 3, adj = 1)
# Top with separation
mtext("Top higher text", side = 3, line = 2.5)
#--------------
# Text function
#--------------
# Add text at coordinates (-2, 2)
text(-2, 2, "More text")
# Add formula at coordinates (3, -3)
text(3, -3, expression(frac(alpha[1], 4)))
Обозначьте точки в R
В этом разделе вы узнаете, как помечать точки данных в R. Для этой цели вы можете использовать text
функцию, указав координаты и метки точек данных в labels
аргументе. С pos
помощью аргумента вы можете задать положение метки относительно точки: 1 снизу, 2 слева, 3 сверху и 4 справа.
attach(USJudgeRatings)
# Create the plot
plot(FAMI, INTG,
main = "Familiarity with law vs Judicial integrity",
xlab = "Familiarity", ylab = "Integrity",
pch = 18, col = "blue")
# Plot the labels
text(FAMI, INTG,
labels = row.names(USJudgeRatings),
cex = 0.6, pos = 4, col = "red")
detach(USJudgeRatings)
Вы также можете пометить отдельные точки данных, если проиндексируете элементы text
функции следующим образом:
attach(USJudgeRatings)
plot(FAMI, INTG,
main = "Familiarity with law vs Judicial integrity",
xlab = "Familiarity", ylab = "Integrity",
pch = 18, col = "blue")
# Select the index of the elements to be labelled
selected <- c(10, 15, 20)
# Index the elements with the vector
text(FAMI[selected], INTG[selected],
labels = row.names(USJudgeRatings)[selected],
cex = 0.6, pos = 4, col = "red")
detach(USJudgeRatings)
Измените тип поля с помощью аргумента bty
bty
Аргумент позволяет изменять тип блока R-графов. Существует несколько вариантов, сведенных в следующую таблицу:
Тип блока | Описание |
---|---|
“o” | Весь блок (по умолчанию) |
“7” | Сверху и справа |
“Л” | Слева и снизу |
“U” | Слева, внизу и справа |
“C” | Сверху, слева и снизу |
“н” | Нет поля |
Форма символов “7”, “L” и “U” представляет границы прямоугольника, который они рисуют.
par(mfrow = c(2, 3))
plot(x, y, bty = "o", main = "Default")
plot(x, y, bty = "7", main = "bty = '7'")
plot(x, y, bty = "L", main = "bty = 'L'")
plot(x, y, bty = "U", main = "bty = 'U'")
plot(x, y, bty = "C", main = "bty = 'C'")
plot(x, y, bty = "n", main = "bty = 'n'")
par(mfrow = c(1, 1))
Обратите внимание, что на других графиках, таких как boxplots, вам нужно будет указать bty
аргумент внутри par
функции.
R легенда сюжета
Наконец, мы рассмотрим, как добавить легенду к графику R с legend
помощью функции. Вы можете задать координаты , в которые вы хотите добавить легенду , или указать "top"
, "bottom"
, "topleft"
, "topright"
, "bottomleft"
или "bottomright"
. Вы также можете указать множество аргументов, как в plot
функции. В качестве примера, вы можете изменить bty в легенде R, цвет фона с bg
аргументом, среди прочего.
plot(x, y, pch = 19)
lines(-4:4, -4:4, lwd = 3, col = "red")
lines(-4:1, 0:5, lwd = 3, col = "green")
# Adding a legend
legend("bottomright", legend = c("red", "green"),
lwd = 3, col = c("red", "green"))
Ознакомьтесь со статьей R legends, чтобы узнать больше о том, как добавлять легенды к сюжетам.