有没有办法在 R 中使用 facet_zoom (ggforce) 在绘图的两侧绘制放大的图?

Is there a way to draw zoomed in plots on either side of a plot with facet_zoom (ggforce) in R?

提问人:maglorismyspiritanimal 提问时间:11/16/2023 最后编辑:Jilber Urbinamaglorismyspiritanimal 更新时间:11/16/2023 访问量:23

问:

我正在尝试复制一篇论文中的一个图,该图显示了一个散点图,其中两部分在两侧放大。我以为使用 ggforce 的 facet_zoom 函数可以实现这一点,但我无法让图显示两个放大的图。

我想复制的图是这样的:

enter image description here

这是我到目前为止尝试过的:

enter image description here

data <- data.frame(cbind(predictors_lst$group, log.concentrations))

cliff <- apply(data[,-1],2,cliff.delta,data$predictors_lst.group)
cliff.est <- t(data.frame(lapply(cliff, function(x) x$estimate)))
opls.model <- opls(data[,-1], data$predictors_lst.group, predI = 1, orthoI = 1)
opls.loadings <- abs(opls.model@loadingMN)
joined_df <- data.frame(cbind(cliff.est,opls.loadings))
colnames(joined_df) <- c("Cliff's delta","OPLS-DA loadings")


joined_df %>%
  ggplot(aes(x=`Cliff's delta`,y=`OPLS-DA loadings`)) +
  geom_point() +
  geom_vline(xintercept = c(-0.6,0.6), 
                color = "red", size=1) +
  geom_hline(yintercept = 0.035, 
                color = "red", size=1) +
  facet_zoom(xlim = c(-0.6,-1), ylim = c(0.035,0.1)) +
  facet_zoom(xlim = c(0.6,1), ylim = c(0.035,0.1)) 
r ggplot2 分面 ggforce

评论


答: 暂无答案