gpt4 book ai didi

r - lapply 中的单独绘图标题

转载 作者:行者123 更新时间:2023-12-03 23:08:29 24 4
gpt4 key购买 nike

我有许多对象,我想将它们一起绘制在一页上,每个对象都有一个单独的标题。目前,我有一个绘图标题向量,我将其输入 lapply 中的 ggtitle,但它只将该向量的第一个条目添加到每个绘图。

下面是一个快速而丑陋的最小示例:

library(ggplot2)
library(gridExtra)

#My 'data'
A.a <- rnorm(10)
A.b <- rnorm(30)
lmnames <- ls(pattern = "A.*")

titlenames <- c("Plot A", "Plot B")

plotlist <- list()
#I have a more complex ggplot function in reality, but I'm using qplot here as a placeholder.
plotlist <- lapply(lmnames, FUN=function(x,y){qplot(get(x)) + ggtitle(y)}, y=titlenames)

grid.arrange(grobs = plotlist)

看起来像这样: Incorrect titles using ggtitle in lapply

您可以看到,两个地 block 都标记为“地 block A”。我想给每个地 block 贴上相应的标签。谁能帮我看看我在这里缺少什么?提前致谢。

最佳答案

你的问题是,在你所有的情节中,你的标题是“情节 A”“情节 B”,参见 plotlist[[1]]$labels$title

工作代码如下:

plotlist <- lapply(1:length(lmnames), function(x){
qplot(get(lmnames[x])) + ggtitle(titlenames[x])
})

我相信还有更优雅的解决方案。但这个会起作用。

问候,J_F

关于r - lapply 中的单独绘图标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37674898/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com