0

配列内で最大のn個の値を見つけ、それらの見つかった値のインデックスを使用して、時間を表す別の配列を検索します。しかし、連続変数として表示する時間を必要とする場合、これをどのようにプロットできるのか疑問に思っています。データをゼロにする必要がありますか?私はメモリを節約しようとしているので、それは私のユースケースには好ましくありません。

最大値を探している配列Aがあるとしましょう。次に、タイムスタンプを表す配列Tがあります。プロットに連続時間を表示させたいのですが、plot()はサイズの異なる引数を好みません。ほとんどの人はこれにどのように対処しますか?

これが私がこれまでに得たものです:

numtofind = 4;
A = m{:,10};
T = ((m{:,4} *  3600.0) + (m{:,5} * 60.0) + m{:,6});

[sorted, sortindex] = sort(A(:), 'descend');
maxvalues = sorted(1:numtofind);
maxindex = sortindex(1:numtofind);
corresponding_timestamps = T(maxindex);

%here i plot the max values against time/corresponding timestamps, 
%but i want to place them in the right timestamp and display time as continuous 
%rather than the filtered set:
plot(time_values, maxvalues);
4

1 に答える 1

1

「継続的な時間」と言うとき、最小から最大までの時間が欲しいということですか? corresponding_timestampsその場合は、並べ替えて、それを使用して並べ替えることができますmaxvalues。それをしなくても、plot(time_values, maxvalues, '.')グラフを線で台無しにしない散布図を取得することはできます。

于 2013-02-03T08:58:22.140 に答える