私は、コマンドが実行されたときのメモリ使用量を追跡するbashスクリプトを持っています。それは所望のコマンドを生成し、次にcolumn1 = "プログラムによって使用中のメモリ(gigs)"というログを書き込み、カラム2はそれまでに経過した時間を秒で表します。例えば私が何をしたいかRグラフをプロットして保存する
31.282 1470
31.565 1480
31.848 1490
31.989 1500
32.273 1510
32.414 1520
32.697 1530
32.980 1540
33.122 1550
33.405 1560
6.511 1570
6.935 1580
7.502 1590
7.926 1600
8.351 1610
8.775 1620
9.059 1630
9.483 1640
9.908 1650
10.333 1660
は、プロセスが完了するまで待機し、その後、時間をかけてメモリ使用量のグラフをプロットし、現在のディレクトリに保存するためにRを使用しています。私はRで遊んでいたと私は私が使用する必要があるコマンドを正確に知る:
> heisenberg <- read.csv(file="4644.log",head=FALSE,sep=" ")
> plot(heisenberg$V2,heisenberg$V1,type="o",col="red",main="Memory Usage Over Time",xlab="Time (seconds)",ylab="Memory (gigabytes)")
> text(max(heisenberg$V2),max(heisenberg$V1),max(heisenberg$V1)) #Displays max value
しかし、私はに引っかかってい一部がjpgまたはPNGとしてグラフを保存しています。または、私はどのように私のbashスクリプト内でこのコマンドを実行することができます。 R言語で書かれた別のスクリプトを絶対に実行して実行する必要がありますか?これはすべてを1つにすることは可能でしょうか?
編集
ここに私のscript.rpng("mem_usage_2965.png",height=800,width=800)
heisenberg <- read.csv(file="2965.log",head=FALSE,sep=" ")
plot(heisenberg$V2,heisenberg$V1,type="o",col="red",main="oases_k85",xlab="Time (seconds)",ylab="Memory (gigabytes)")
text(max(heisenberg),max(heisenberg),max(heisenberg))
dev.off()
ためのコードである誰もがテキストを出力PNGの最大値を印刷しない理由として役立つことはできますか?私はbashのスクリプトのようにそれを呼び出していますR CMD BATCH script.r script.out
なぜ 'heisenberg $ V1'と 'heisenberg $ V2'の' max() 'を計算していませんか?現時点では、**両方の座標(xとy)の 'heisenberg'データフレームの最大値である値を計算しているので、プロットには表示されません。それはプロットの外です。私はあなたが望んでいると思う: '(heisenberg、text(max(V2)、max(V1)、max(V1)))'は少なくともあなたが示した元のコードスニペットによって示唆されたものです。あなたは、新しいコードが元のイエスと一致しないことを認識していますか? –
もっと見ると、今は違いが分かります。それは、単にscript.rをbashスクリプトの出力としてオープンしたためですが、$をエスケープするのを忘れてしまいました。したがって、それらはヌル変数として解釈されました。あなたが言ったように、私はその声明を試してみるでしょう。明確にするために、私が望むのは、グラフに最大値をテキスト表示で表示することです。 –