2015-10-23 34 views
0

我有超過100個應用程序以及每個應用程序的cpu和性能數據。我需要通過我的數據集併爲所有這些應用程序創建cpu和內存圖表。每個應用程序都需要在pdf中有自己的部分。你如何以編程方式在乳膠/ sweave中創建子部分

比方說,我有一個這樣的應用矢量:

app<-c("Web", "Farm1", "Farm2", "Pod1") 

我怎麼會編程爲每個應用程序創建節並插入CPU和內存?

輸出可能是這樣的:

1. Webb 
      cpu chart 
      memory chart 
2. Farm1 
      cpu chart 
      memory chart 

我已經試過這樣:

\documentclass{article} 

\begin{document} 
\title{applications cpu and memory} 
\SweaveOpts{concordance=TRUE} 
\tableofcontents 

<<results='asis'>>= 
    for (product in app){ 
    cat(paste("\\section{",product,"}", sep="")) } 
    @ 


    \end{document} 

我得到這個錯誤,當我嘗試編譯爲pdf:

Writing to file ddd.tex 
Processing code chunks with options ... 
Error in match.arg(options$results, c("verbatim", "tex", "hide")) : 
    'arg' should be one of "verbatim", "tex", "hide" 
Calls: <Anonymous> -> SweaveParseOptions -> check -> match.arg 
Execution halted 

有什麼想法?

回答

1

你接近,只是把Sweave

<<results=tex>>= 

,而不是(knitr的)

<<results='asis'>>= 

或者,使用knitr。爲此,您可能需要在現有文件上調用Sweave2knitr()

僅供參考,請參閱Sweave manual,第13頁或knitr chunk options

+0

@Hi Max,我還有一個問題。我想通過該for循環中的每個應用程序並打印出ggplot輸出。我做p <-ggplot(...),然後在for循環下打印(p)不打印到pdf,有什麼想法? – user1471980