YuLab-SMU / aplot

Decorate a plot with associated information
https://yulab-smu.top/aplot
92 stars 14 forks source link

add operator acting on aplot class #22

Closed xiangpin closed 1 year ago

xiangpin commented 1 year ago
> library(aplot)
> example(insert_right, prompt.prefix='')

> library(ggplot2)

> library(aplot)

> p <- ggplot(mtcars, aes(mpg, disp)) + geom_point()

> p2 <- ggplot(mtcars, aes(mpg)) +
      geom_density(fill='steelblue', alpha=.5) +
          ggtree::theme_dendrogram()

> p3 <- ggplot(mtcars, aes(x=1, y=disp)) +
      geom_boxplot(fill='firebrick', alpha=.5) +
      theme_void()

> ap <- p %>%
      insert_top(p2, height=.3) %>%
      insert_right(p3, width=.1)

> ap
Hit <Return> to see next plot:

> ap[2, 1] <- ap[2, 1] + theme_bw()

> ap[2, 1] <- ap[2, 1] +
              aes(color = as.factor(am)) +
              scale_color_manual(values = c('steelblue', 'darkgreen'))

> ap[1, 1] <- ap[1, 1] + theme(axis.line.x.bottom=element_line())

> ap

xx