编织+ RweaveHTML:cat 输出未出现在输出中

发布于 2024-11-27 07:52:48 字数 524 浏览 0 评论 0原文

我对 Sweave + RweaveHTML 有问题

,我希望 cat 的输出最终出现在正在生成的 html 文件中。我有一个情况,它没有,我不明白为什么:(

test = function()
{
   #bla bla;
   cat("Result is...")
}

然后在 Rnw 文件中我尝试了所有这些:

<<echo=FALSE, results=html, include=TRUE>>=
test()
@

<<results=html, include=TRUE>>=
test()
@

<<results=html>>=
test()
@

<<>>=
test()
@

但我没有在生成的 HTML 文件中得到 cat 输出。 我很确定这应该有效...

我应该做什么才能将标准输出输出到最终的 html 文件有什么想法吗?

谢谢!

I have a problem with Sweave + RweaveHTML

I want the output of cat ends to up in the html file being generated. I have a case in which it does not and I can't figure out why :(

test = function()
{
   #bla bla;
   cat("Result is...")
}

And then in the Rnw file I tried all of these:

<<echo=FALSE, results=html, include=TRUE>>=
test()
@

<<results=html, include=TRUE>>=
test()
@

<<results=html>>=
test()
@

<<>>=
test()
@

But I don't get the cat output in the resulting HTML file.
I'm pretty sure this is supposed to work...

Any ideas of what I'm supposed to do to get the stdout ouput to the final html file?

Thx!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

迷迭香的记忆 2024-12-04 07:52:48

RweaveHTML 驱动程序与 RweaveLatex 驱动程序的工作方式不同,在创建输出时,每行代码的结果均使用通用函数 <代码>HTML。其他创建输出的方法不起作用。因此,要从函数内获取输出,我知道有两种方法;一种是返回一个由HTML泛型处理的值,另一种是直接调用HTML。以下 test 函数的替换演示了这两种情况。

test <- function() {
   #bla bla;
   HTML("Result is...")
   "Return value is"
}

也可以将 cat 替换为 HTML;那么你原来的功能就可以工作了。但这有点像黑客行为,可能会产生不可预见的后果;您可以

cat <- HTML

在文档的开头放入一个(可能是隐藏的)Sweave 块。

The RweaveHTML driver works differently than the RweaveLatex driver in that to create output, the result from every line of code is processed with the generic function HTML. Other ways of creating output don't work. So to get output from within a function, there are two ways I know of; one is to return a value to be processed by the HTML generic, and the other is to call HTML directly. The following replacement of your test function demonstrates both.

test <- function() {
   #bla bla;
   HTML("Result is...")
   "Return value is"
}

It's also possible to replace cat with HTML; then your original function would work. But it's a bit of a hack and could have unforeseen consequences; you'd put

cat <- HTML

in a (probably hidden) Sweave chunk at the beginning of the document.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文