Добавить прозрачный прямоугольник на коробчатую диаграмму в R

Lasha Khintibidze 30 Январь 2023 16 Июль 2021
  1. Используйте функцию rect, чтобы добавить прозрачный прямоугольник к прямоугольной диаграмме в R
  2. Используйте функцию annotate с ggplot, чтобы добавить прозрачный прямоугольник к прямоугольной диаграмме в R
Добавить прозрачный прямоугольник на коробчатую диаграмму в R

В этой статье будет продемонстрировано несколько методов того, как добавить прозрачный прямоугольник в коробчатую диаграмму в R.

Используйте функцию rect, чтобы добавить прозрачный прямоугольник к прямоугольной диаграмме в R

Прозрачный прямоугольник можно нарисовать как наложение на существующий график, построенный с помощью функции boxplot. Функция rect вызывается после функции plot для рисования прямоугольника. Обратите внимание, что rect также можно использовать для рисования последовательности прямоугольников с заданными координатами. В этом случае мы добавляем только один прямоугольник к блок-графику, который накладывается на фон. Функция rect принимает позиции в качестве первых четырех аргументов, определяющих площадь прямоугольника. Эти четыре аргумента могут быть переданы как скалярное значение или вектор скаляров. В следующем примере набор данных mtcars и два его числовых столбца используются для рисования на шкалах. Поскольку значения числовые, мы можем использовать функцию max, чтобы указать некоторые позиции. Функция rect также может принимать цвет в качестве параметра для заполнения прямоугольника. На этот раз функция rgb используется для передачи значения цвета и параметра alpha, представляющего его непрозрачность.

boxplot(hp ~ mpg, data = mtcars,
       xlab = "Miles/(US) gallon", ylab = "Gross Horsepower",
       col = "orange")

rect(-1, -1, max(mtcars$hp + 100), max(mtcars$hp) + 100,
     col= rgb(red = 0.95, green = 0.8, blue = 0.3, alpha = 0.2))

прозрачный прямоугольник прямоугольник функция

Используйте функцию annotate с ggplot, чтобы добавить прозрачный прямоугольник к прямоугольной диаграмме в R

Если график построен с использованием библиотеки ggplot, мы можем использовать функцию annotate, чтобы добавить прозрачный прямоугольник. Следующий фрагмент кода отображает коробчатую диаграмму со значениями символов на оси x. Функция annotate принимает строку rect в качестве первого аргумента для определения прямоугольной формы слоя аннотации. Следующие четыре аргумента определяют значения положения фигуры. Несмотря на то, что ось x имеет нечисловые значения, функция может перечислить их позиции и соответствовать номерам позиций, переданным пользователем.

library(ggplot2)
library(dplyr)

p1 <- ggplot(InsectSprays, aes(x = spray, y = count)) +
  geom_boxplot(fill = "pink") +
  scale_x_discrete(name = "Number of babies") +
  ggtitle("Title of the Plot") +
  annotate("rect", xmin = 1, xmax = 3, ymin = 0, ymax = max(InsectSprays$count),
           alpha = .2, fill = "orange")

p1

прозрачный прямоугольник аннотировать ggplot

В качестве альтернативы можно использовать функцию annotate, чтобы нарисовать прямоугольник на линейном графике и выделить определенный диапазон графика. Обратите внимание, что когда шкалы имеют числовые значения, аргументы *min/*max могут принимать точные значения из этих диапазонов.

library(ggplot2)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice", "Maude", "Mae")) %>%
  filter(sex=="F")

p1 <- ggplot(dat, aes(x = year, y = n, color = name)) +
  geom_line() +
  scale_y_continuous(
    breaks = seq(0, 15000, 1000),
    name = "Number of babies") +
  ggtitle("Name Popularity Through Years") +
  annotate("rect", xmin = 1960, xmax = 2000, ymin = -1, ymax = max(dat$n),
         alpha = .2, fill = "orange")

p1

прозрачный прямоугольник ggplot xmax

Сопутствующая статья - R Plot