AIM: Matlabの2つのプロットのアニメーションを同期させる必要があります。matlabで正のカレンダーを見つける
問題: 2つのプロットのデータは、さまざまなサンプルレートで取得されています。
解決法: デュレーションオブジェクトの2つのデータセットのタイムスタンプを(ストリーミングの開始から)変換しました。 2つのデータセットをforループにプロットする必要があります。 各ループについて、経過時間内にあるデータセットのサンプルを表示する必要があります。
質問: 特定のサンプルの期間が既に発生しているかどうかを確認するにはどうすればよいですか?
コード例: ここでは、ランダムな持続時間(d1)とランダムな経過時間(et)をシミュレートしてソートします。どの期間が経過したかを知りたい
% simulate elapsed time
et = calendarDuration(round(rand(1,6)*10));
% simulate data for plot 1
data_for_plot1 = rand(10,1);
% simulate durations for the samples in plot1
d1 = calendarDuration(sortrows(round(rand(10,6)*10)));
% find index of durations which are before the elapsed time
is_past = (d1-et)>0;
% plot the data
plot(data_for_plot1(is_past))
`
`
型 'calendarDuration' の入力引数に対してエラーメッセージ
is_past = (d1-et)>0;
未定義の演算子 '>'。
代替ソリューション: 時間と日付のオブジェクトで初めてのことです。そのすべてのビットを嫌っています。あなたが他の解決策を持っているなら、私はそれらを聞いてみたいと思います。data1のタイムスタンプが文字列( 'yyyy-MM-dd HH:mm:ss.SSS')であり、data2のタイムスタンプがdouble(例:42.525,42秒、525ミリ秒)であることに注意してください。
あなたは、この目的のためにsplit
機能を使用することができ、あなたの助け
の使用
is_past = split((d1-et),'time')> 0;
はあなたに感謝します。これで解決します。 –