How to trim(remove) plot
31 ビュー (過去 30 日間)
古いコメントを表示
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?
0 件のコメント
採用された回答
DGM
2021 年 4 月 3 日
編集済み: DGM
2021 年 4 月 3 日
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.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Graphics Performance についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!