Как создавать параллельные графики в ggplot2


Часто вам может потребоваться создать два графика рядом с помощью пакета ggplot2 в R. К счастью, это легко сделать с помощью пакета patchwork .

 #install ggplot2 and patchwork packages
install.packages(' ggplot2 ')
install.packages(' patchwork ')

#load the packages 
library(ggplot2)
library(patchwork)

В этом руководстве показано несколько примеров использования этих пакетов для создания параллельных графиков.

Пример 1: два графика рядом

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

 #create box plot
plot1 <- ggplot(iris, aes(x = Species, y = Sepal.Length)) +
  geom_boxplot()

#create density plot
plot2 <- ggplot(iris, aes(x = Sepal.Length, fill = Species)) +
  geom_density(alpha = 0.8)

#display plots side by side
plot1 + plot2 

Параллельные графики в ggplot2 в R

Пример 2: три графика рядом

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

 #create box plot
plot1 <- ggplot(iris, aes(x = Species, y = Sepal.Length)) +
  geom_boxplot()

#create density plot
plot2 <- ggplot(iris, aes(x = Sepal.Length, fill = Species)) +
  geom_density(alpha = 0.7)

#create scatterplot 
plot3 <- ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width)) +
  geom_point()

#display three plots side by side
plot1 + plot2 + plot3

Три графика рядом в ggplot2

Пример 3: два сложенных графика

Следующий код показывает, как создать два сложенных графика, один поверх другого:

 #create box plot
plot1 <- ggplot(iris, aes(x = Species, y = Sepal.Length)) +
  geom_boxplot()

#create density plot
plot2 <- ggplot(iris, aes(x = Sepal.Length, fill = Species)) +
  geom_density(alpha = 0.7)

#display plots stacked on top of each other
plot1 / plot2 

Два сложенных графика в ggplot2

Пример 4. Добавьте заголовки, субтитры и подписи.

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

 #create box plot
plot1 <- ggplot(iris, aes(x = Species, y = Sepal.Length)) +
  geom_boxplot() +
  ggtitle('Boxplot')

#create density plot
plot2 <- ggplot(iris, aes(x = Sepal.Length, fill = Species)) +
  geom_density(alpha = 0.7) +
  ggtitle('Density Plot')

#display plots side by side with title, subtitle, and captions
patchwork <- plot1 + plot2 

patchwork + plot_annotation(
  title = ' This is a title ',
  subtitle = ' This is a subtitle that describes more information about the plots ',
  caption = ' This is a caption '
)

Параллельные графики в ggplot2 с заголовками и субтитрами

Дополнительные руководства по R можно найти здесь .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *