在R中的匿名函数中写入多条语句

在R中的匿名函数中写入多条语句,r,anonymous-function,reporters,R,Anonymous Function,Reporters,我想使用reporteRs库将一个绘图包含到一些MS Word文档中 以下是我如何包括我的情节: doc = addPlot(doc, fun = function() plot( km.as.one, mark.time=TRUE, conf.int=FALSE, cex=1, col="blue", xlab = "Délai en années", ylab = "Pourcentage", lty=1:3, ), ve

我想使用
reporteRs
库将一个绘图包含到一些MS Word文档中

以下是我如何包括我的情节:

doc = addPlot(doc, 
  fun = function() plot(
    km.as.one,
    mark.time=TRUE,
    conf.int=FALSE,
    cex=1,
    col="blue",
    xlab = "Délai en années", ylab = "Pourcentage",
    lty=1:3,
  ),
  vector.graphic = TRUE, width = 5, height = 4,
  par.properties = parProperties(text.align = "center")
)
我的问题是,我想添加一些错误条,自定义轴,也许还可以添加标题,方法是添加以下内容:

axis(1, at = seq(0, 36, by = 6))
with (data=summary.km.as.one, expr=errbar(time, surv, upper, lower, add=TRUE, pch=0.5, cap=0.02))
我必须在
plot
语句之外编写它,但是我找不到如何在匿名函数中编写它

甚至可以在匿名函数中编写多条语句吗?


如果是,正确的方法是什么?如果不是,有什么解决办法吗?

只需添加大括号
{}
,就可以添加多行:

doc = addPlot(doc, 
  fun = function() { 
    # line 1
    # line 2
    # etc...
  },
  vector.graphic = TRUE, width = 5, height = 4,
  par.properties = parProperties(text.align = "center")
)

您只需要使用
{}
来包含所有语句。所以
fun=function(){plot(…);axis(…);with(…)}
。我想知道我怎么能在所有这些教程中看不到这一点。。。谢谢,先生@丹查尔蒂尔:没问题。作为一种风格建议,最好始终为
if
for
和函数(即使它们仅为一行)添加大括号。这样,就可以直观地清楚地看到这些块中有哪些线,并且还可以让您在将来轻松地添加线。