質問

Rの中、一緒にいくつかのプロットを縫合することにより、「映画」を作成する簡単な方法はありますか?

役に立ちましたか?

解決

ここで私はRのヘルプを使用して見つかった1つの方法はあります:

個々の画像フレームを作成するには:

jpeg("/tmp/foo%02d.jpg")
for (i in 1:5) {
  my.plot(i)
}
dev.off()

映画を作るには、まず ImageMagickのをインストールします。 そして、(私が思うのImageMagickの一部、「変換」と呼ぶ)は、以下の関数を呼び出します:

make.mov <- function(){
     unlink("plot.mpg")
     system("convert -delay 0.5 plot*.jpg plot.mpg")
}

またはこの記事ので説明したようにffmpegの機能を使用してみてください(私が見つけたこのは)きれいな結果を与えます: ffmpegの-r 25 -qscale 2 -i TMP / FOO%02d.jpg output.mp4

工夫のビットが必要になる場合がありますが、これはすべてがインストールされた後、非常にシンプルに見えた。

もちろん、どこでもあなたは「JPG」または「JPEG」を参照してください、あなたはあなたの空想に合わせてGIFまたはPNGに置き換えることができます。

他のヒント

により作成されたいずれかのアニメーションのパッケージを見てみましょう Yihui謝するまたは<のhref = "http://www.bioconductor.org/packages/devel/bioc /html/EBImage.html」のrel = "noreferrer"> EBImage のbioconductorパッケージ(?アニメーション)。

私はあなたがcaToolsライブラリ内のwrite.gif機能でも、これを行うことができると思います。最初のマルチフレーム画像にあなたのグラフを取得する必要があるだろう。私はそれを行うするかどうかはわかりません。誰でも? Bueller?

アニメーションGIFの古典的な例は、私が書いていない、このコードですが、私はブログをやりましたのいくつかの時間前におよそます:

library(fields) # for tim.colors
library(caTools) # for write.gif
m = 400 # grid size
C = complex( real=rep(seq(-1.8,0.6, length.out=m), each=m ), imag=rep(seq(-1.2,1.2, length.out=m), m ) )
C = matrix(C,m,m)

Z = 0
X = array(0, c(m,m,20))
for (k in 1:20) {
Z = Z^2+C
X[,,k] = exp(-abs(Z))
}

image(X[,,k], col=tim.colors(256)) # show final image in R
write.gif(X, 'Mandelbrot.gif', col=tim.colors(256), delay=100)

コードの信用はJarek Tuszynski、博士に行きます。

あなたのRスクリプトは、より大きなのPerl / Pythonのは/ etcの中にラップしている場合。スクリプトは、あなたのお気に入りのコマンドライン画像ステッチツールでグラフを一緒にステッチすることができます。

<のhref =「http://blog.revolution-computing.com/2009/06/running-scripts-with-r-cmd-batch.html」を使用し、ラッパースクリプトを使用してRのスクリプトを実行するにはrel = "nofollowをnoreferrer"> R CMD BATCH の方法。

私はそれがRからのデータポイントは、MySQLデータベースにエクスポートされたとFlex / Flashアプリケーションは、これらのデータポイントをピックアップし、アニメーションの可視化を与えたとき、私は一度プロジェクトをやったR.で可能であるかわからない..

私はスライドショー機能を作成しますXnViewの者(フリーウェアグラフィックビューア)を使用して、いくつかの映画をやりました。私は、空間データとの時間を通して傾向を見せたかったので、私はちょうど順次という名前の一連のプロットを作成し、[ペーストは、()calistethics命名のすべての種類のためにあなたの友人である]、その後XNviewsにそれらをロードされたが、対話をスライドショーといくつかのタイマー変数を設定します出来上がり。それを行うと、いくつかの実行可能なグラフィックスを生成する方法については、5分のようにかかっています。

ここでHDF5ファイルからアニメーションGIF「映画」を作るの完全な例です。データは、HDFデータセットであるべきである3次元配列[NFRAMES] [NROWS] [Ncolumns]。

#
# be sure to be run as Administrator to install new packages
#
source("http://bioconductor.org/biocLite.R")
biocLite("rhdf5")
install.packages('caTools')
install.packages('fields')

library(caTools)
library(fields)
library(rhdf5)

x = h5read(file="mydata.h5",name="/Images")
write.gif(x,"movie1.gif",col=rainbow,delay=10,flip=TRUE)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top