How to indicate the maximum value on the given curve
z1 = [0.00008 0.009]';
a11 = -1:0.001:1;
k1 = atan(((0.01/2 + a11)./z1)) + atan((0.01/2 - a11)./z1);
plot(a11,k1(1,:),'-k',a11,k1(2,:),'-r')

 Akzeptierte Antwort

Davide Masiello
Davide Masiello am 14 Apr. 2022
Bearbeitet: Davide Masiello am 14 Apr. 2022

1 Stimme

z1 = [0.00008 0.009]';
a11 = -1:0.001:1;
k1 = atan(((0.01/2 + a11)./z1)) + atan((0.01/2 - a11)./z1);
[~,idx_k1] = max(k1,[],2);
plot(a11,k1(1,:),'-k',a11,k1(2,:),'-r',a11(idx_k1(1)),k1(1,idx_k1(1)),'*b',a11(idx_k1(2)),k1(2,idx_k1(2)),'*b')
text(a11(idx_k1(1))+0.05,k1(1,idx_k1(1)),num2str(k1(1,idx_k1(1))))
text(a11(idx_k1(2))+0.05,k1(2,idx_k1(2)),num2str(k1(2,idx_k1(2))))

4 Kommentare

Amy Topaz
Amy Topaz am 14 Apr. 2022
Thank you,
Also How to indicate the numerical value at the top of the curve?
Davide Masiello
Davide Masiello am 14 Apr. 2022
Edited the code, now it does that too.
If correct, please accept the answer for reference to other users with the same problem.
Sam Chak
Sam Chak am 14 Apr. 2022
+1.
Another way to plot a marker at the maximum point, assuming you don't want any other markers, is to use the MarkerIndices property of the line.
x = 0:180;
s = sind(x);
[~, location] = max(s);
plot(x, s, 'o-', 'MarkerIndices', location, ...
'MarkerFaceColor', 'r') % Make the marker stand out in red

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by