2

重複の可能性:
ループ内での PDF のプロットと保存

初心者の問題。私のタブ区切りの入力データは次のようになります。

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」ファイルを生成しますが、空白です(開こうとするとエラーになります)。

上記のコードの 1 行目と 2 行目を 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(...))ましたが、何も変わりません。コードのどこが間違っているのか本当にわかりません...

どんなアドバイスや説明も素晴らしいでしょう!ありがとう !

4

1 に答える 1

1

ggplot 呼び出しの閉じ括弧がありません。

この行:

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

次のようにする必要があります。

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

または、次のように pdf() dev.off() の代わりに ggsave() を試すことができます。

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

2 つの方法を混在させないでください。

于 2013-01-23T07:09:48.310 に答える