Sensing the data changes and plotting

1 view (last 30 days)
uzzi
uzzi on 27 Oct 2022
Commented: uzzi on 1 Nov 2022
I have a table "a" which has multiple rows and 2 columns; t for time and q for data. I attached here.
I want to plots the period only where the sudden change of value happens (from start to end of the changes) such as I showed in figure where the value jumped from nearly -4 to -43.65.
After that I'd like to generate a table of the data of the plot. There will be many periods where such kind of data changes occurs so I want to plot everytime with that data changes.
load = 'newdata3.csv';
data = readtable(load);
data = sortrows(data,'Var1','ascend');
timetable(data.Var1, data.Var2);
plot(data.Var1,data.Var2)
findchangepts(data.Var2,'MaxNumChanges',20)
Here, I tried and it is not showing at the correct changes points. There are 12 changes points and it is only showing 5 of them. I don't know how to fix this.

Answers (1)

Image Analyst
Image Analyst on 27 Oct 2022
Do you have the Image Processing Toolbox? If so, it's easy.
v = a.V;
mask = v > 200
props = regionprops(mask, 'PixelIdxList');
numRegions = numel(props);
coords = vertcat(props.PixelIdxList);
startingRows = coords(:, 2);
or something similar. It would have been easier if you had read the posting guidelines and remembered to attach your data.
To learn other fundamental concepts, invest 2 hours of your time here:
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
  12 Comments
Image Analyst
Image Analyst on 1 Nov 2022
Yes. But I don't know what you want.
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
uzzi
uzzi on 1 Nov 2022
I think you didn't understand my question. That's the question I'm asking from the start. I can plot in conventional way. According to the plot, you can see that there are 6 places where big data changes happen.
What I want is I want the MATLAB to sense the data automatically and generate a graph where a big data changes is sensed.
In this case, I want the MATLAB to automatically generated 6 figures where big data changes occurs.
I hope this explanation is clear to you.

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!