我想使用 将图形输出到单个 tex 文件{tikzDevice}
,我编写了以下循环试图实现它:
library{tikzDevice}
graphList <- list(...) # ... are the graphs I have made using ggplot2
for (i in 1:length(graphList)) {
cat("\\begin{figure}\n", file = "GraphList.tex", append=TRUE)
sink("GraphList.tex", append=TRUE)
tikz(console = TRUE)
graphList[[i]]
dev.off()
sink()
cat(paste0("\\caption{", names(graphList)[[i]],"}",sep=" "),
file = "GraphList.tex", append=TRUE)
cat("\\end{figure}\n", file = "GraphList.tex", append=TRUE)
}
有时它可以工作,但有时不能通过仅将我放入cat
零件中的内容写入tex
没有图表的文件来实现。
我对此很陌生,有人可以帮我离开这里吗?非常感谢!
更新:
以下代码有效(例如,假设我在列表中只有 2 个图表):
sink("Output/graph/GraphList.tex", append=TRUE)
tikz(console = TRUE)
cat("\\begin{figure}\n")
graphList[[1]]
cat(paste0("\\caption{", names(graphList)[[1]],"}",sep=" "))
cat("\n\\end{figure}\n")
cat("\n\\begin{figure}\n")
graphList[[2]]
cat(paste0("\\caption{", names(graphList)[[2]],"}",sep=" "))
cat("\n\\end{figure}\n")
sink()
所以我的疯狂猜测是R
不会将循环部分写入文件,对吗?