在R中执行和获取脚本有什么区别

时间:2013-07-04 22:05:27

标签: r

一个基本问题,我正在开始R。

当我采购R脚本与执行它时,主要区别是什么? 我正在尝试运行ggplot2示例脚本。

library("ggplot2")

d = data.frame(x1=c(1,3,1,5,4), x2=c(2,4,3,6,6), y1=c(1,1,4,1,3), y2=c(2,2,5,3,5), t=c('a','a','a','b','b'), r=c(1,2,3,4,5))
ggplot() +
scale_x_continuous(name="x") +
scale_y_continuous(name="y") +
geom_rect(data=d, mapping=aes(xmin=x1, xmax=x2, ymin=y1, ymax=y2, fill=t),color="black",alpha=0.5) +
geom_text(data=d, aes(x1+(x2-x1)/2,y=y1+(y2-y1)/2, label=r), size=4) +
opts(title="geom_rect", plot.title=theme_text(size=40, vjust=1.5))

当我使用此脚本时,不会显示任何图表。我理解这与我的代码中缺少明确的print语句有关。我读过一个讨论,当你在交互式shell中执行命令时,print语句是隐式的。

我的问题是 - 当我执行脚本vs源它时,基本区别是什么? 我什么时候会做另一个?谢谢!

1 个答案:

答案 0 :(得分:4)

这似乎与第7节中的R-FAQ有关,该问题与基于网格的图形未被绘制的原因有关。尝试使用显式printplot命令。

source的帮助页面中阅读“详细信息”的第一句话:

`详细

请注意,通过源运行代码在某些方面与在R命令行输入代码有所不同。由于表达式不是在顶级执行,因此不会自动打印。(我很高兴看到你确实阅读了该部分的其余内容。)