gpt4 book ai didi

r - ggplot 的 qplot 不执行采购

转载 作者:行者123 更新时间:2023-12-03 05:35:57 25 4
gpt4 key购买 nike

假设我有 2 个源文件,第一个名为 example1.r,第二个名为 example2.r(如下所示)。

example1.r

plot(1:10,1:10)

example2.r

qplot(1:10,1:10)

当我获取 example1.r 时,会绘制图表。但是,当我获取 example2.r 时,情况并非如此。这里的解决方案是什么?

(example2.r中的qplot是 ggplot2 的函数)

最佳答案

更新:

  • .R 文件: source 的选项 print.eval=TRUE 将导致评估结果的打印行为,就像交互式中一样命令行。

source("Script.R", print.eval=TRUE)

  • .Rnw 文件: knitr 默认情况下模拟交互式命令行的行为。 打印。请注意,knitr 也可以指定为 R 包小插图的 Sweaving 引擎。

<小时/> 这是我原来的答案。但请注意,恕我直言,这个解决方法现在已经完全过时了(它总是只适合一个小的懒惰利基市场)。

这就是著名的FAQ 7.22: Why do lattice/trellis graphics not work? .

对于像ggplot2或lattice这样的网格图形,您需要打印图形对象才能实际绘制它。

在命令行上以交互方式自动完成此操作。在其他地方(在要获取的文件、循环、函数、Sweave block 内),您需要显式地打印它。

print (qplot (1 : 10, 1 : 10))

或者,您可以重新定义 qplot 来进行打印:

qplot <- function (x, y = NULL, z = NULL, ...) {
p <- ggplot2::qplot (x = x, y = y, z = z, ...)
print (p)
}

(这会将轴标签更改为 x 和 y)。

我在小插图中使用了这种方法,我希望编写的代码与交互式 session 中的用户键入的代码完全一样。

关于r - ggplot 的 qplot 不执行采购,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6675066/

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