How to trim(remove) plot

5 vues (au cours des 30 derniers jours)
AhyounLee
AhyounLee le 3 Avr 2021
Commenté : AhyounLee le 4 Avr 2021
I should remove yellow there, and get a maximum of x (when y = 0)
and there's no x-intercept
I tried :
if y < 0, y = [] else plot(x, y)
mask = (y<0) cla(mask)
interp1(y, x, 0) => it comes to zero
but any of them didn't work.
if I can cut off that part, I can get the answer : [ k, l ] = find(x==max(x)) x_int = [ max(x) , y(k, l) ] .
How can I trimming that part?

Réponse acceptée

DGM
DGM le 3 Avr 2021
Modifié(e) : DGM le 3 Avr 2021
Try something like this:
x=0:300;
y=-0.008*x.^2 + 2*x + 1.5;
y(y<0)=NaN;
Anything that's NaN won't be plotted.
Alternatively, you can do it the way you were trying:
mask=y>=0;
y=y(mask);
x=x(mask);
and then your intercept finding method should work.
intercept=[x(end) y(end)]
Intercepts could also be found symbolically.
  1 commentaire
AhyounLee
AhyounLee le 4 Avr 2021
OMG THX YOU
It really helped me thanks

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by