2013-01-23 45 views
2

可能重複時:
Plotting and saving PDFs in a loop空白文件保存GGPLOT2酒吧積成PDF(Windows 7)中

新手的問題。 我的製表符分隔的輸入數據看起來像這樣:

x y 
1 50 
2 25 
3 60 
4 25 
5 90 
6 100 

這裏是我的代碼文件「code.R」:

data <- read.table("input",header=T,sep="\t") 
pdf("output.pdf") 
ggplot (data,aes(x=x,y=y) + geom_bar(stat="identity") 
dev.off() 

我運行下面的命令代碼,並沒有得到任何錯誤回覆消息:

source("code.R") 

該代碼生成「output.pdf」文件,但它是空白的(當我想打開它時出錯)。

當我在我的R終端中手動輸入上述代碼的第一行然後是第二行時,圖形在圖形設備中看起來是正確的。

當我寫在一個文件下面幾行並運行該文件,沒有發生(沒有錯誤,沒有圖形設備窗口)

data <- read.table("input",header=T,sep="\t") 
ggplot (data,aes(x=x,y=y)) + geom_bar(stat="identity") 

輸入和代碼文件的行結束在Windows格式。 我也試過data <- as.data.frame(read.table(...))但它沒有改變。 我真的沒有看到我的代碼有什麼問題...

任何建議和解釋將是偉大的! 謝謝!

+0

重複。閱讀R-FAQ 7.22 –

回答

1

您錯過了您的ggplot調用的小括號。

這條線:

ggplot (data,aes(x=x,y=y) + geom_bar(stat="identity") 

應該是:

ggplot (data,aes(x=x,y=y)) + geom_bar(stat="identity") 

或者你可以嘗試ggsave(),而不是PDF()dev.off()這樣的:

ggplot (data,aes(x=x,y=y)) + geom_bar(stat="identity") 
ggsave("output.pdf") 

不要混用這兩種方法。

+0

沒有解釋爲什麼他會得到一個空白的情節。 –

+0

錯別字對不起。當我在R終端中手動輸入代碼以在圖形設備中輸出圖時,問題來自其他方面。 – lqdo2000

+0

我嘗試過編輯它,它工作。沒有編輯,我會得到與lqdo2000描述的相同的行爲。 – N8TRO