フィルターのクリア

How remove plateaus on plot?

1 回表示 (過去 30 日間)
Bruno
Bruno 2014 年 1 月 29 日
コメント済み: Iain 2014 年 1 月 29 日
I want create a script that remove the plateau in red on the plot (figure) and concatenate the rest of the data. I have large data set. Thanks

採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2014 年 1 月 29 日
t=1:numel(y)
d=abs(gradient(y,t))
y(d<0.4)=[];
plot(y)

その他の回答 (1 件)

Iain
Iain 2014 年 1 月 29 日
I can't download your example, but the answer shouldn't be too difficult:
data %- This is your vector of values.
initial = data(1);
diffs = diff(data);
diffs(diffs==0) = [];
diffs(2:end+1) = diffs;
diffs(1) = initial;
new_data = cumsum([initial diffs]);
plot(new_data)
  2 件のコメント
Bruno
Bruno 2014 年 1 月 29 日
Hi Iain, is not running
Error in ==> pl at 7 new_y = cumsum([initial diffs]);
Iain
Iain 2014 年 1 月 29 日
My bad, I didn't correct for something I'd corrected for:
new_data = cumsum(diffs);

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by