Создать гистограмму с помощью ggplot в R

Lasha Khintibidze 30 Январь 2023 14 Июль 2021
  1. Используйте geom_histogram, чтобы создать гистограмму с ggplot в R
  2. Используйте параметры fill, colour и size для изменения визуализации гистограммы в R
  3. Используйте facet_wrap для построения нескольких гистограмм, сгруппированных по категориям в R
Создать гистограмму с помощью ggplot в R

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

Используйте geom_histogram, чтобы создать гистограмму с ggplot в R

Простая гистограмма строится с помощью функции geom_histogram, и для построения графика требуется только одна переменная. В данном случае мы используем набор данных diamonds, а именно столбец price из него, чтобы указать отображение на ось абсцисс. geom_histogram автоматически выбирает размер бина и масштабные точки данных, если это явно не передано пользователем.

library(ggplot2)

p1 <- ggplot(diamonds, aes(x = price)) +
  geom_histogram()

p1

R gg график гистограммы 1

Следующий пример расширяет предыдущий фрагмент кода, чтобы указать точки останова на каждой оси с помощью функций scale_x_continuous и scale_y_continuous. Параметр breaks используется для передачи значений, сгенерированных функцией seq. Параметры seq интуитивно понятны для чтения, поскольку они образуют шаблон - (from, to, by). Мы также используем функцию grid.arrange для отображения двух графиков бок о бок для визуального сравнения.

library(ggplot2)
library(gridExtra)

p1 <- ggplot(diamonds, aes(x = price)) +
  geom_histogram()

p2 <- ggplot(diamonds, aes(x = price)) +
  geom_histogram() +
  scale_y_continuous(breaks = seq(1000, 14000, 2000)) +
  scale_x_continuous(breaks = seq(0, 18000, 2000))

grid.arrange(p1, p2, nrow = 2)

гистограмма ggplot 2

Используйте параметры fill, colour и size для изменения визуализации гистограммы в R

Общие параметры, такие как fill, colour и size, могут использоваться для изменения визуального представления элементов графика. Параметр fill определяет цвет, которым заполняются ячейки; Напротив, colour используется для штрихов корзины. size принимает числовое значение для обозначения ширины штрихов корзины. Также обратите внимание, что следующий фрагмент кода добавляет параметр name к обеим осям.

library(ggplot2)
library(gridExtra)

p3 <- ggplot(diamonds, aes(x = price)) +
  geom_histogram(fill = "pink", colour = "brown") +
  scale_y_continuous(breaks = seq(1000, 14000, 2000)) +
  scale_x_continuous(breaks = seq(0, 18000, 2000))

p4 <- ggplot(diamonds, aes(x = price)) +
  geom_histogram(fill = "pink", colour = "brown", size = .3) +
  scale_y_continuous(breaks = seq(1000, 14000, 2000), name = "Number of diamonds" ) +
  scale_x_continuous(breaks = seq(0, 18000, 2000), name = "Price" )

grid.arrange(p3, p4, nrow = 2)

гистограмма ggplot 3

Используйте facet_wrap для построения нескольких гистограмм, сгруппированных по категориям в R

Функцию facet_wrap можно использовать для рисования нескольких гистограмм на основе набора переменных. Набор данных diamonds предоставляет достаточно измерений для выбора переменных из одного из его столбцов. Например, мы выбрали столбец cut, чтобы отображать разные гистограммы price для каждого типа. Функцию theme можно также комбинировать с geom_histogram, чтобы указать пользовательское форматирование для элементов графика.

library(ggplot2)

p5 <- ggplot(diamonds, aes(x = price)) +
  geom_histogram(fill = "pink", colour = "brown", size = .3) +
  scale_y_continuous( name = "Number of diamonds" ) +
  scale_x_continuous( name = "Price" ) +
  facet_wrap(~cut) +
  theme(
    axis.title.x = element_text(
      size = rel(1.2), lineheight = .9,
      family = "Calibri", face = "bold", colour = "black"
    ),
    axis.title.y = element_text(
      size = rel(1.2), lineheight = .9,
      family = "Calibri", face = "bold", colour = "black"
    ),
    plot.background = element_rect("yellow"))


p5

гистограмма ggplot 4

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