Аннотировать текст за пределами графика ggplot2 в R

Опубликовано: 15 Сентября, 2022

Ggplot2 основан на грамматике графики, идее, что вы можете построить любой график из одних и тех же нескольких компонентов: набора данных, набора геометрических фигур — визуальных меток, представляющих точки данных, и системы координат. Есть много сценариев, когда нам нужно аннотировать за пределами области графика или конкретной области в соответствии с требованиями клиента. В этом случае очень удобна библиотека ggplot2 со своими дополнительными параметрами для получения требуемого вывода и с хорошими параметрами настройки для визуализации данных.

Чтобы добавить аннотации в R с помощью ggplot2, используется функция annotate().

Syntax: annotate() 

Parameters:

  • geom : specify text
  • x : x axis location
  • y : y axis location
  • label : custom textual content
  • color : color of textual content
  • size : size of text
  • fontface : fontface of text
  • angle : angle of text

Подход

  • Импорт библиотеки
  • Создать или загрузить набор данных
  • Создайте нормальный сюжет
  • Добавьте функцию annotate() с необходимыми параметрами

Давайте сначала посмотрим, как аннотации добавляются внутри графика, чтобы лучше понять разницу в положении аннотаций.

Примеры :

R




library(ggplot2)
  
Dt = iris
  
ggplot(Dt,aes(x=Species,y=Sepal.Length)) +  
geom_bar(stat = "summary", fun = "mean") +  
annotate("text", x = 1, y = 7, label = "Arbitrary text") + 
coord_cartesian(ylim = c(0, 8), clip = "off")

Выход:

Теперь давайте визуализируем с аннотациями вне графика.

Пример:

R




library(ggplot2)
  
Dt = iris
  
ggplot(Dt,aes(x=Species,y=Sepal.Length)) +  
geom_bar(stat = "summary", fun = "mean") +  
annotate("text", x = 1, y = -1, label = "text") +  
coord_cartesian(ylim = c(0, 8), clip = "off")

Выход: