gpt4 book ai didi

r - 循环通过一系列 qplots

转载 作者:行者123 更新时间:2023-12-04 09:27:46 25 4
gpt4 key购买 nike

我想循环浏览一长串qplotsggplot2情节,在每个情节处暂停,以便我可以在继续之前对其进行检查。

以下代码不产生任何图:

library(ggplot2)
par(ask=TRUE)
for(Var in names(mtcars)) {
qplot(mtcars[,Var], wt, data=mtcars, xlab=Var)
}

但是如果我在运行循环后运行这条线,我会得到一个情节:
qplot(mtcars[,Var], wt, data=mtcars, xlab=Var)

这种行为的原因是什么?如何显示循环内的图?

跟进:
有没有比使用 mtcars[,Var] 更优雅的方式循环变量?和 xlab=Var ?

最佳答案

正如其他答案所说,包装每个 qplot()来电print() (这是 R FAQ 7.22 )。原因是 ggplot 直到 print.ggplot 才打印到图形设备上。被召唤在他们身上。 print()是一个派发到 print.ggplot 的通用函数在幕后。

当您在 repl(“read-evaluate-print loop”,又名 shell)中工作时,前一个输入行的返回值会通过对 print() 的隐式调用自动打印出来。 .这就是为什么qplot(mtcars[,Var], wt, data=mtcars, xlab=Var)正在为你工作。这与范围或 for 循环无关。如果您将该行放在不直接返回 repl 的其他任何地方,例如在返回其他内容的函数中,它将什么也不做。

关于r - 循环通过一系列 qplots,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7824610/

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