plot.MCA()不包括在Sweave中

时间:2012-01-25 19:16:51

标签: r sweave

我似乎没有通过Sweave包含情节的任何其他方法出现问题。但是,plot.mca(),来自FactoMineR包的方法似乎没有得到它的情节。它确实创建了一个Rplot.pdf文件 - 但无论出于何种原因,它都没有重命名为“RnwFilename-00X.pdf”,并且当你在RStudio中compilePdf()时它不会包含在生成的PDF中。

这是一个简单的例子,请亲自试试。

请注意,您可能需要:install.packages("FactoMineR")

\documentclass[a4paper]{article}

% PREAMBLE
\begin{document}

\begin{center}
<<echo=false,fig=true>>=
library(FactoMineR)
x <- data.frame(
A=sample(letters[1:3],100,rep=T),
B=sample(letters[1:4],100,rep=T),
C=sample(letters[1:3],100,rep=T))
fit.mca <- MCA(x, graph=FALSE)
plot(fit.mca, invisible="ind")
@
\end{center}

\end{document}

更新 - 有关错误消息的更多详细信息:

LaTeX errors:
!pdfTeX error: C:\Program Files (x86)\MiKTeX 2.9\miktex\bin\pdflatex.EXE (file 
R:/.../RnwFilename-010.pdf): PDF inclusion: required page do
es not exist <0>

1 个答案:

答案 0 :(得分:2)

如果我告诉plot.MCA不要创建新设备,它对我有用:

plot(fit.mca, invisible="ind",new.plot = FALSE)
稍微编辑一下,这似乎是绘图功能的次优行为,大多数用户(以及其他代码显然)希望依靠R的默认动作自动打开新设备。绘图函数应该只在用户明确告知时才打开新设备(通过调用pngpdf等或通过实际设置new.plot = TRUE)。但是,意见可能会有所不同。