2016-11-17 66 views
-1

任何人都可以解釋爲什麼當我在命令行中運行以下命令:地塊R中的環境中工作,而不是通過RSCRIPT

>R #So I'm in the R environment 
>plot(cars) 
>sessionInfo() 

預期該地塊生產和sessionInfo輸出:

> sessionInfo() 
R version 3.2.3 (2015-12-10) 
Platform: x86_64-pc-linux-gnu (64-bit) 
Running under: Ubuntu precise (12.04.5 LTS) 

locale: 
[1] LC_CTYPE=en_GB.UTF-8  LC_NUMERIC=C    
[3] LC_TIME=en_GB.UTF-8  LC_COLLATE=en_GB.UTF-8  
[5] LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8 
[7] LC_PAPER=en_GB.UTF-8  LC_NAME=C     
[9] LC_ADDRESS=C    LC_TELEPHONE=C    
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C 

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base 

然而,當我把兩行代碼到一個名爲Test.R腳本,看起來像這樣:

#!/usr/bin/Rscript 
plot(cars) 
sessionInfo() 

而且運行「RSCRIPT Test.r」

沒有情節產生,並從會話信息的輸出是:

R version 3.2.3 (2015-12-10) 
Platform: x86_64-pc-linux-gnu (64-bit) 
Running under: Ubuntu precise (12.04.5 LTS) 

locale: 
[1] LC_CTYPE=en_GB.UTF-8  LC_NUMERIC=C    
[3] LC_TIME=en_GB.UTF-8  LC_COLLATE=en_GB.UTF-8  
[5] LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8 
[7] LC_PAPER=en_GB.UTF-8  LC_NAME=C     
[9] LC_ADDRESS=C    LC_TELEPHONE=C    
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C  

attached base packages: 
[1] stats  graphics grDevices utils  datasets base 

兩個sessionInfo的看起來是一樣的,我登錄到我的終端與「-X」參數,並輸入「xclock」產生一個時鐘的圖片,我之前使用Rscript來繪製圖。我還添加了一行「require(methods)」,因爲我讀here可能有幫助。如果有人能提供幫助,我可以做什麼來查明問題,我會很感激。

編輯1:對Amit的迴應評論如下: 我實際上在Mac上使用unix,我認爲你的方法是針對windows的,所以我稍微編輯了一下我認爲應該是的命令,但讓我知道如果我做錯了。我這樣做:

$ /usr/bin/Rscript --vanilla --slave Test2.r 
Loading required package: methods 
R version 3.2.3 (2015-12-10) 
Platform: x86_64-pc-linux-gnu (64-bit) 
Running under: Ubuntu precise (12.04.5 LTS) 

locale: 
[1] LC_CTYPE=en_GB.UTF-8  LC_NUMERIC=C    
[3] LC_TIME=en_GB.UTF-8  LC_COLLATE=en_GB.UTF-8  
[5] LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8 
[7] LC_PAPER=en_GB.UTF-8  LC_NAME=C     
[9] LC_ADDRESS=C    LC_TELEPHONE=C    
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C  

attached base packages: 
[1] methods stats  graphics grDevices utils  datasets base 
+0

RSCRIPT可靠不住。如果你去cmd然後寫:'「C:\ Program Files \ R \ R-3.2.2 \ bin \ x64 \ R.exe」--vanilla --slave CMD BATCH「D:\ PATH \ FILE會發生什麼情況。 R「'(顯然將R路徑更改爲您正在使用的版本以及路徑/文件? –

+0

我已經將輸出作爲註釋添加到上面了,我很抱歉,我收到了錯誤,說我的回覆帖子(即代碼)太長而無法粘貼 – user1288515

+0

你仍然在使用Rscript ...使用'usr/bin/R',然後指定你的路徑到'Test2.r'。你確定它是'.r'不是' .R'? –

回答

-1

我可以積打印,如果我直接打印到PDF是這樣的:

#!/bin/Rscript 
require(methods) 
pdf("cars.pdf") 
plot(cars) 
dev.off() 
+0

絕對不是'/ bin/Rscript'。也許'/ usr/bin/Rscript'或'/ usr/local/bin/Rscript'。 –

相關問題