2014-02-21 61 views
0

我正在嘗試使用R降價。我在外部文件中獲得了我的圖形的R代碼,並且我想使用sourceread_chunk在R markdown文件中繪製圖表來讀取我的R代碼。我無法自己找到解決方案。如何使用R markdown從外部文件繪製圖形?

這裏是我的gist,複製下面爲了方便:

gr.R

ggplot(data = df, aes(x = x, y = y)) + geom_point() 

降價文件:

```{r data, echo=FALSE} 
library("ggplot2") 
library("knitr") 
df <- data.frame(x = rnorm(100), u = rnorm(100)) 
df$y <- 1 + df$x + df$u 
``` 


```{r test, echo=FALSE, results='asis'} 
read_chunk('gr.R') 
``` 

```{r test2, echo=FALSE, results='asis'} 
source('gr.R') 
```` 
+0

你有一個叫做'gr.R'在同一文件夾作爲RMarkdown文檔文件?如果是這樣,你的代碼應該使用'source()'。 – Andrie

+0

我有gr.R在同一個文件夾中,但它不起作用。 – PAC

+0

更確切地說,如果我在'source'函數中選擇'echo = TRUE',我已經得到了源代碼+圖表,但我不知道如何在沒有源代碼的情況下獲得圖表輸出 – PAC

回答

1

您需要明確地打印情節:

gr.R

plt <- ggplot(data = df, aes(x = x, y = y)) + geom_point() 

rmarkdown

```{r test2, echo=FALSE, results='asis'} 
source('gr.R') 
print(plt) 
````