Remove nonsensical data in plot (for loop )
Show older comments
I am plotting my results from thermodynamic cycle analysis using a for loop. However, some curves have non-sensical data and I would like to remove them. The X-data is fixed, but the loction of where the Y-data become non-sensical varies. Is there a solution to this particular issue?
4 Comments
Torsten
on 4 Oct 2025
If you define a mathematical criterion for what "non-sensical" is, you can sort out these data.
Walter Roberson
on 4 Oct 2025
What do you want to have happen? Automatic detection of lines that have singularities and just not plot those lines at all? Automatic detection of lines that have singularities and some kind of automatic straightening of those lines so that they no longer have singularities? Automatic detection of lines that have singularities acting as feedback to the process to know to redo the calculations somehow?
Sara
on 4 Oct 2025
dpb
on 4 Oct 2025
How are the results being generated; why not fix that proceess to not create the discontinuities to begin with?
If nothing else, at least attach .mat files containing the data such that somebody can do something with it; nothing can be done with the images except look at them.
Answers (1)
Walter Roberson
on 5 Oct 2025
%assume that Data_To_plot is an N x 7 array of data to be plotted
Copy_Data = Data_To_plot;
Copy_Data(~cumprod(Data_To_Plot > 0, 1)) = nan;
plot(x, Copy_Data)
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!