Split the graph based on a specific value

3 views (last 30 days)
jeon on 15 Oct 2021
Commented: KSSV on 15 Oct 2021
I have a graph like this.
This image is the part of the plot and the mean of y(77449x1 array) is 0.4943.
I want to divide it into small graphs by cut the graph from the part where y is the average of y.
Is it possible? If so, can I know what to do?
Or is it simpler to plot after dividing the y-value array than dividing the graph?

Answers (1)

KSSV on 15 Oct 2021
Let (x,y) be your data.
idx = knnsearch(y,mean(y)) ; % this will give index in y which is close to mean(y)
% plot
hold on
KSSV on 15 Oct 2021
You can specify the number of points you want in knnsearch.
idx = knnsearch(y,mean(y),'k',10) ;
Also you can use simple inequalitilies to achieve the present.
tol = 10^-3 ;
idx = abs(y-mean(y))<=tol ;
idx = find(idx)
I would suggest to use the above.

Sign in to comment.


Community Treasure Hunt

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

Start Hunting!