使用R/exams2pdf()生成PDF文档
我是R/TEAMS软件包的新手,我尝试从开发人员提供的一个模板生成一个pdf文档。() 我能够使用命令将Rnw文件编译成HTML文档使用R/exams2pdf()生成PDF文档,r,r-exams,R,R Exams,我是R/TEAMS软件包的新手,我尝试从开发人员提供的一个模板生成一个pdf文档。() 我能够使用命令将Rnw文件编译成HTML文档 library("exams") exams2html("confint3.Rnw") 调用函数时 exams2pdf(“confint3.Rnw”) 它给出了错误消息 ! LaTeX Error: File `Sweave.sty' not found. 我已经安装了Latex,一般来说使用它没有问题。我不明白: 我是否需要告诉exams2pdf()late
library("exams")
exams2html("confint3.Rnw")
调用函数时
exams2pdf(“confint3.Rnw”)
它给出了错误消息
! LaTeX Error: File `Sweave.sty' not found.
我已经安装了Latex,一般来说使用它没有问题。我不明白:
exams2pdf()
latex安装的位置李>
plain.tex
)吗?它应该是什么样子library(“tinytex”)
之后,我还尝试了exams2pdf()
非常感谢您在何处查看或做什么。谢谢大家!
最简单的例子:
install.packages("exams")
install.packages("tth")
library("exams")
set.seed(1090)
exams2html("confint3.Rnw")
set.seed(1090)
exams2pdf("confint3.Rnw")
很难诊断所提供的信息到底出了什么问题。在任何情况下,通过
utils::texi2dvi()
(未安装R软件包tinytex
时的默认值)或通过tinytex::latexmk()
(安装R软件包tinytex
时的默认值)运行pdfLaTeX时,都找不到R基本系统提供的swave.sty
文件。我不清楚哪个LaTeX引擎在后台运行:Windows上的MikTeX
有几种策略可以解决这个问题:
- 告诉您的LaTeX安装有关R base系统提供的
目录的信息,以便无论您在系统的何处调用pdfLaTeX,都能找到该目录texmf
- 使用不同的LaTeX安装,例如通过
(R软件包)安装TinyTeX(LaTeX发行版):TinyTeX
。如果您实际上不是LaTeX用户,只是需要它来编译PDF考试,那么这可能特别有吸引力TinyTeX::install_TinyTeX()
- 避免在自定义模板文件中使用
文件,例如swave.sty
。这篇文章的结尾包含了对这样一个文件的建议myplain.tex
exams2pdf()
利用了utils::texi2dvi()
或tinytex::latexmk()
。因此,这些人需要了解LaTeX的安装情况,但事实似乎是这样。他们就是找不到base R提供的texmf
检查\u skeleton(markup=“latex”,writer=“exams2pdf”)
。除此之外,这将创建一个templates
文件夹,您可以将myplain.tex
模板放在下面myplain.tex的内容
:
\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{a4wide,graphicx,color,verbatim,url,fancyvrb,ae,amsmath,amssymb,booktabs,longtable,eurosym}
\newenvironment{question}{\item \textbf{Problem}\newline}{}
\newenvironment{solution}{\textbf{Solution}\newline}{}
\newenvironment{answerlist}{\renewcommand{\labelenumi}{(\alph{enumi})}\begin{enumerate}}{\end{enumerate}}
\providecommand{\tightlist}{\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
\setkeys{Gin}{keepaspectratio}
\DefineVerbatimEnvironment{Sinput}{Verbatim}{fontshape=sl}
\DefineVerbatimEnvironment{Soutput}{Verbatim}{}
\DefineVerbatimEnvironment{Scode}{Verbatim}{fontshape=sl}
\newenvironment{Schunk}{}{}
\begin{document}
\begin{enumerate}
%% \exinput{exercises}
\end{enumerate}
\end{document}
我在Ubuntu上,无法复制。我得到了一个很好的pdf文档。与Mac或Windoze设备相比,Linux BOXE更可能用于getgo的Latex操作。尝试创建一个正在运行的示例,但
tests
包的安装过程也未能安装tth
包。显然,包作者在他们的依赖项中忽略了这一要求。@AchimZeileis:因为包维护者有时是SO的贡献者,如果“SO pin”如果没有引起他的注意,那么您可以使用包描述中的维护人员信息:Achim.Zeileis at R-project.org感谢@IRTFM纠正我的问题和最简单的示例。我应该更精确地描述包的依赖关系,对吗。据我所知,这不是错误消息的来源,我已经安装了tth软件包。再次感谢@IRTFM,我想联系Achim Zeileis,但我想先把我的问题发布在这里。结果证明,只有第一次函数调用才需要“tth”-pkg:exams2html
,而且Achim知道这一点,因此在建议中只有“tth”,而不是导入,所以我的错误不是他的。亲爱的@Achim Zeileis!谢谢你的及时回复和对我的问题进行格式化。我忘了提到我在Mac OS上使用MacTeX。多年来,我在研究和教学中广泛使用R和Latex,我已经看过了您提供给我的链接,谢谢。我不确定它是否解决了我的问题,但我会考虑您的所有其他建议。@IRTFM感谢您对此的支持。关于tth
安装的问题:我需要更多的细节来说明这一点。请随时通过电子邮件报告或将详细信息发布到其他地方。@n.small在这种情况下,我建议不要安装TinyTeX发行版。作为一种短期解决方法,您可以使用自己的LaTeX模板(如我发布的myplain.tex
)。此外,我建议解决无法找到swave.sty
的问题。可能上面链接的讨论中用户chan1142的建议对您有用…谢谢@Achim Zeileis。您提供的tex模板在将其放入我的R工作目录后解决了我的问题。不过我知道这是一个解决办法,我还没有掌握问题的复杂性,但现在我能够为你的一个模板生成一系列随机版本。好的,很好!关于RStudio中的编织选项设置。这些影响RStudio中的编织/编织按钮,但不影响其他包装的行为。在R/tests中,默认情况是对.Rnw文件使用swave()
,以保持依赖关系简单,因为大多数检查通常不需要knitr
的扩展功能。但是,您可以设置