Як створити горизонтальну легенду в base r (2 методи)


Ви можете використовувати такі методи, щоб створити горизонтальну легенду на базовому R-графіку:

Спосіб 1. Використовуйте горизонтальний аргумент

 legend(' bottom ', fill=fill_cols, legend=c(' A ', ' B ', ' C ', ' D ', ' E ', ' F '),
        horiz= TRUE , inset=c(0, -.1), xpd= TRUE )

У цьому конкретному прикладі створюється горизонтальна легенда під графіком, у якій кожен елемент легенди знаходиться на одному рядку.

Спосіб 2. Використовуйте аргумент ncol

 legend(' bottom ', fill=fill_cols, legend=c(' A ', ' B ', ' C ', ' D ', ' E ', ' F '),
        ncol=3, inset=c(0, -.15), xpd= TRUE )

У цьому конкретному прикладі створюється горизонтальна легенда під графіком із трьома стовпцями.

Аргумент inset(x, y) керує розташуванням легенди. Використовуючи від’ємні значення для значення y, ми можемо вивести легенду за межі графіка.

Аргумент xpd=TRUE дозволяє розмістити легенду за межами графіка, залишаючись видимою в області графіка.

Наступні приклади показують, як використовувати кожен метод на практиці.

Приклад 1: використовуйте аргумент horiz, щоб створити горизонтальну легенду в основі R

У наведеному нижче коді показано, як використовувати аргумент horiz=TRUE у функції legend() для створення горизонтальної легенди в нижній частині базового графіка R:

 #create vector of values
data <- c(4, 10, 7, 5, 4, 3)

#specify fill colors to use
fill_cols <- c(' red ', ' pink ', ' blue ', ' green ', ' purple ', ' brown ')

#create bar plot to visualize values in vector
barplot(data, col=fill_cols)

#add legend to bottom of plot
legend(' bottom ', fill=fill_cols, legend=c(' A ', ' B ', ' C ', ' D ', ' E ', ' F '),
        horiz= TRUE , inset=c(0, -.1), xpd= TRUE ) 

горизонтальний графік в основі R

Зверніть увагу, що горизонтальна легенда була створена та розміщена внизу графіка.

Не соромтеся грати зі значеннями аргументу вставки , щоб також налаштувати розташування легенди.

Наприклад, ми можемо зробити значення y вставленого аргументу ще більш негативним, щоб розмістити легенду ще нижче:

 #create vector of values
data <- c(4, 10, 7, 5, 4, 3)

#specify fill colors to use
fill_cols <- c(' red ', ' pink ', ' blue ', ' green ', ' purple ', ' brown ')

#create bar plot to visualize values in vector
barplot(data, col=fill_cols)

#add legend to bottom of plot
legend(' bottom ', fill=fill_cols, legend=c(' A ', ' B ', ' C ', ' D ', ' E ', ' F '),
        horiz= TRUE , inset=c(0, -.2), xpd= TRUE ) 

Зауважте, що горизонтальну легенду було переміщено ще нижче під сюжетом.

Приклад 2: використовуйте аргумент ncol, щоб створити горизонтальну легенду в основі R

У наведеному нижче коді показано, як використовувати аргумент ncol у функції legend() для створення горизонтальної легенди з трьома стовпцями внизу базової діаграми R:

 #create vector of values
data <- c(4, 10, 7, 5, 4, 3)

#specify fill colors to use
fill_cols <- c(' red ', ' pink ', ' blue ', ' green ', ' purple ', ' brown ')

#create bar plot to visualize values in vector
barplot(data, col=fill_cols)

#add legend to bottom of plot
legend(' bottom ', fill=fill_cols, legend=c(' A ', ' B ', ' C ', ' D ', ' E ', ' F '),
        ncol=3, inset=c(0, -.15), xpd= TRUE ) 

Зверніть увагу, що горизонтальна легенда з трьох стовпців була створена та розміщена внизу графіка.

Ви можете змінити значення аргументу ncol , щоб створити легенду з іншою кількістю стовпців.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як змінити розмір легенди на графіку Base R
Як намалювати легенду за межами сюжету в R
Як змінити положення легенди на базових діаграмах R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *