1

を使用して単一の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だから、ループ部分をファイルに書き込まないというのが私の勝手な推測ですが、それは正しいですか?

4

0 に答える 0