Как нарисовать легенду вне сюжета в R


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

par( mar =c(5, 4, 4, 8), xpd= TRUE )

В следующем пошаговом примере показано, как использовать этот синтаксис на практике.

Шаг 1: Создайте данные

Во-первых, давайте создадим некоторые данные для работы:

#create data frames
df1 <- data.frame(x=c(1, 2, 3, 4, 5, 6, 7),
 y=c(2, 7, 19, 26, 24, 29, 31))

df2 <- data.frame(x=c(1, 2, 3, 4, 5, 6, 7),
 y=c(4, 4, 7, 9, 12, 13, 8))

Шаг 2: Создайте график с легендой вне графика

Далее создадим график и добавим легенду вне графика в правом верхнем углу:

#add extra space to the right of the plot
par( mar =c(5, 4, 4, 8), xpd= TRUE )

#plot both data frames
plot(y ~ x, df1, pch =1, main=" Scatterplot with multiple groups ")
points(y ~ x, df2, pch =3)

#add legend outside of plot
legend(" topright", inset =c(-0.2, 0), legend =c(" df1"," df2 "), pch =c(1,3), title =" Data ") 

Шаг 3: Измените местоположение легенды

Аргумент inset(x, y) можно использовать для управления расположением легенды справа от графика. Например, мы можем сделать аргумент x более отрицательным, чтобы сдвинуть легенду еще дальше вправо:

#add extra space to the right of the plot
par( mar =c(5, 4, 4, 8), xpd= TRUE )

#plot both data frames
plot(y ~ x, df1, pch =1, main=" Scatterplot with multiple groups ")
points(y ~ x, df2, pch =3)

#add legend outside of plot
legend(" topright", inset =c(-0.3, 0), legend =c(" df1"," df2 "), pch =c(1,3), title =" Data ") 

Мы также можем сделать аргумент y более положительным, чтобы опустить легенду ниже:

#add extra space to the right of the plot
par( mar =c(5, 4, 4, 8), xpd= TRUE )

#plot both data frames
plot(y ~ x, df1, pch =1, main=" Scatterplot with multiple groups ")
points(y ~ x, df2, pch =3)

#add legend outside of plot
legend(" topright", inset =c(-0.3, .5), legend =c(" df1"," df2 "), pch =c(1,3), title =" Data ") 

Не стесняйтесь изменять значения аргумента inset(x, y) , чтобы изменить расположение легенды.

Вы можете найти больше руководств по R на этой странице .