编织:将R的输出解释为LaTeX代码

|| 我编写了一些包装第三方二进制代码的自定义R代码。该二进制文件的功能之一是生成带有图形和一些文本的LaTeX文档。我的代码的功能之一是解析该文档并返回该图的LaTeX代码。 目的是将我的R代码嵌入Rnw文档中。运行Sweave时,我希望我的代码使用第三方二进制文件生成文档,然后为该图形提取LaTeX代码并将其放入Sweave的.tex输出中。然后,当我针对该输出运行乳胶时,由第三方二进制文件生成的图形应自动且格式正确地显示在我的报告中。 相反,LaTeX代码是这样打印出来的:
[1] \" %\\\\begin{landscape}\"
[1] \" \\\\begin{center}\"
[1] \"\\\\psset{linecolor=black,tnsep=2pt,tnheight=0cm,treesep=.3cm,levelsep=40pt,radius[1] \"% \\\\def\\\\psedge#1#2{\\\\ncangle{#2}{#1}}\"
[1] \"% \\\\pstree[treemode=R]\"
[1] \" \\\\pstree{\\\\Tcircle{ 1 }~[tnpos=l]{\\\\shortstack[r]{nwsprec\\\\\\\\$\\\\leq$ 1.93}}}{\"
等等... 有没有办法让Sweave将R \的输出视为LaTeX代码? 提前致谢。 -韦斯利     
已邀请:
        我想到了! Sweave代码需要如下所示:
<<echo=False, results=tex, include=True>>=
...R code goes here...
@
选项
results=tex
是至关重要的更改,它告诉Sweave将R的输出解释为LaTeX代码。 为了摆脱引号和行号,我需要在R中使用
cat
命令而不是
print
。具体来说,我将ѭ5更改为
cat( paste(line, \"\\n\", sep=\'\') )
。     

要回复问题请先登录注册