Как изменить положение легенды на графиках Base R


Есть два способа изменить положение легенды на базовых графиках R:

Способ 1: использовать координаты (x, y)

legend( 4 , 12 , legend=c('y1', 'y2'), col=c('purple', 'red'), lty= 1 )

Способ 2: Используйте ключевые слова

legend('bottomright', legend=c('y1', 'y2'), col=c('purple', 'red'), lty= 1 )

Используя этот метод, вы можете указать следующие местоположения:

  • "Нижний правый"
  • "нижний"
  • "Нижняя левая"
  • "оставил"
  • "верхний левый"
  • "Топ"
  • "в правом верхнем углу"
  • "Правильно"
  • "центр"

В следующих примерах показано, как использовать каждый метод на практике.

Пример 1. Изменение положения легенды с использованием координат (x, y)

В следующем коде показано, как создать легенду для графика в базе R и разместить ее в точках x=4 и y=12:

#create data
x <- 1:10
y1<- c(3, 6, 8, 7, 8, 9, 13, 12, 10, 10)
y2 <- c(1, 3, 3, 4, 6, 7, 8, 10, 9, 9)

#create plot with multiple lines
plot(x, y1, col='purple', type='l', xlab='x', ylab='y')
lines(x, y2, col='red')

#add legend
legend( 4 , 12 , legend=c('y1', 'y2'), col=c('purple', 'red'), lty= 1 ) 

Обратите внимание, что легенда размещается в точных координатах (x, y), которые мы указали.

Пример 2. Изменение позиции легенды с помощью ключевых слов

В следующем коде показано, как создать легенду для графика в базе R и поместить ее в верхний левый угол:

#create data
x <- 1:10
y1<- c(3, 6, 8, 7, 8, 9, 13, 12, 10, 10)
y2 <- c(1, 3, 3, 4, 6, 7, 8, 10, 9, 9)

#create plot with multiple lines
plot(x, y1, col='purple', type='l', xlab='x', ylab='y')
lines(x, y2, col='red')

#add legend
legend('topleft', legend=c('y1', 'y2'), col=c('purple', 'red'), lty= 1 ) 

Легенда размещается в верхнем левом углу графика, как мы и указали.

Мы можем легко изменить его на другое место, например, в правый нижний угол, используя другое ключевое слово:

#create data
x <- 1:10
y1<- c(3, 6, 8, 7, 8, 9, 13, 12, 10, 10)
y2 <- c(1, 3, 3, 4, 6, 7, 8, 10, 9, 9)

#create plot with multiple lines
plot(x, y1, col='purple', type='l', xlab='x', ylab='y')
lines(x, y2, col='red')

#add legend
legend('bottomright', legend=c('y1', 'y2'), col=c('purple', 'red'), lty= 1 ) 

Легенда теперь находится в правом нижнем углу графика.

Связанный: Как нарисовать легенду вне сюжета в R

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как построить несколько линий на одном графике в R
Как построить линию наилучшего соответствия в R
Как использовать abline() в R