2016-09-14 6 views
3

私は、一定の時間間隔で3次元空間内のオブジェクトの動きを示すデータを持っています。データは以下の通りである:プロットした点の数を制御するスライダ付きの3次元グラフをプロットする

Time X Y Z 
1  1 1 1 
2  2 1 2 
3  2 0 1 
4  3 2 1 
..... 

(X、Y、Z)時間におけるオブジェクトの位置は、Tあります。 3D空間でオブジェクトの完全な動きを示す3Dグラフをプロットしたいが、時間範囲(500〜750など)を選択してオブジェクトの動きを見ることができるようなスライダなどを用意する3D空間。 x、y、zは4次元の位置と時間であり、スライダーを使ってその時間の点のプロットを制御します。 [以下のMathematicaの例はこれについての良い考えを与える]

もっと明確にする。最初に、時間1から物体の完全な移動を3D空間に描画し、Nに描画します。次にスライダを制御して、同じオブジェクトの動きをt1t2タイムスタンプの間に描画します。また、スライダがいつ何時に表示されることが重要です(動きに基づいて興味のあるタイムスタンプを書き留める必要があるため)。

私はグーグルで同じことをしましたが、私が望むものを手に入れるのに十分近い例はありませんでした。それらのすべては、スライダを軸変数の1つにバインドします(xまたはyは時間かもしれません)が、4次元にバインドする必要があります。 ダイグラフは有望でしたが、私は上記のような問題を抱えていました(3dサポートも見つかりませんでした)。

This one in Mathematica is interesting。しかし、私はそれのためのライセンスを持っていません。トレースされた3Dパス上のポイントを移動するだけです。これも私の問題を解決することができますが、私はそれを一時停止するときにタイムスタンプの値を知ることができるはずです。

解決方法ライセンスの問題がないため、私には良いことです。または、高度な視覚化ツールボックスを使用していない場合は、Matlabにあります。またはPython。

ありがとうございました。

答えて

4

これは、必要に応じてカスタマイズできる生の例です。これは、これはかなり近いですmanipulateplot3D

library(manipulate) 
library(plot3D) 

min_time <- 1 
max_time <- 100 
time_interval <- min_time:max_time 

# Create data frame 
DF <- data.frame(t = time_interval) 

# Time parametric functions 
X <- function(t) { 
    return(2 * t) 
} 

Y <- function(t) { 
    return(t ** 2) 
} 

Z <- function(t) { 
    return(10 * cos(t/100)) 
} 
# Update data frame 
DF$x <- sapply(DF$t, X) 
DF$y <- sapply(DF$t, Y) 
DF$z <- sapply(DF$t, Z) 

# Use manipulate with RStudio 
manipulate({ 
    lines3D(x = DF$x, y = DF$y, z = DF$z) 
    scatter3D(
    x = DF$x[t], 
    y = DF$y[t], 
    z = DF$z[t], 
    add = TRUE 
) 
}, t = slider(min_time, max_time)) 

enter image description here

+1

を使用しています。何時でも動きをアニメーション化できますか? B'se私は手動で各位置にスライダを移動し、ポインタの動きを見るのを待つ必要があります。私はもっ​​と期待しているかもしれませんが、それは私を助けます。もう一度ありがとう! – inblueswithu

+1

また、私は実際にタイム・バウンドに基づいてプロットを再描画したいので、オブジェクトの動きを見ることができます。 – inblueswithu

+1

また、http://stackoverflow.com/questions/1298100/creating-a-movie-from-a-series-of-plots-in-rおよびhttp://www.programmingr.com/content/animations-r/ –

関連する問題