R - cowplot: упорядочить изображение png и ggplot, используя plot_grid - PullRequest
0 голосов
/ 29 мая 2019

Я пытаюсь расположить изображение png и объект ggplot рядом, используя plot_grid из пакета cowplot:

library(cowplot)
library(tableHTML)

sg <- data.frame(start = c(0,5,10), 
                 end = c(10,20,30),
                 duration = c(10,15,20), 
                 row.names = c("A","B","C"))

p1 <- ggplot(sg)+
  geom_segment(aes(x=start, y=row_number(start), xend=end, yend=row_number(start)), 
               size = 3) +
  scale_y_reverse(labels = NULL) +
  labs(y = "", x = "") +
  theme(aspect.ratio = 1/5)

sg %>%
  tableHTML() %>%
  add_theme("scientific") %>%
  tableHTML_to_image(file = "image2.png", zoom = 2)

p2 <- ggdraw() + draw_image("image2.png", scale = 0.7)

plot_grid(p2, p1, ncol = 2, scale = c(0.9,1), rel_widths = c(1, 2))

Однако в полученном графике мне сложно расположить два графикапри необходимости.

see here

В идеале я бы хотел, чтобы нижняя граница изображения таблицы соответствовала оси X графика.Я также хотел бы, чтобы эти два элемента были ближе друг к другу.

Я попытался изменить масштаб графика p2, аргумент масштабирования в команде tableHTML_to_image или масштаб, rel_widths, align и axis.внутри команды plot_grid, но ни один из них на самом деле не приближает меня к желаемому выводу.

Я также читал здесь: Вставить изображение / PNG ggplot2 - Cowplot , но это только для добавленияизображение внутри существующего графика, а не рядом с ним.

Хотя plot_grid отлично работает при организации двух ggplots, я не могу сделать это правильно с изображением и ggplot.

...