Highlight y-max
33 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Benjamin Nienhouse
am 18 Nov. 2020
Kommentiert: Benjamin Nienhouse
am 20 Nov. 2020
So I'm wondering how I would highlight the y-max for my "Original Data" plot. Below is my code but I only want to highlight the y-max for the "Original data" plot.
Thanks,
Ben
h = input("Initial height (m): "); %Initial height
angle = input("Initial Angle of elavation: "); %Degrees
v = input("Initial velocity (m/s): "); %M/S
g=-9.81; %M/S^2
angles = 0:10:180;
heights = 0:10:100;
velocity = 10:10:100;
figure
[x_val,y_val] = Arc(g,h,angle,v);
plot(x_val,y_val);
hold on;
xlabel 'x (m)'
ylabel 'y (m)'
title 'Original Data'
figure
for a = angles
[x_val,y_val] = Arc(g,h,a,v);
plot(x_val,y_val);
hold on;
end
xlabel 'x (m)'
ylabel 'y (m)'
title 'Angles 0-180'
figure
for hi = heights
[x_val,y_val] = Arc(g,hi,angle,v);
plot(x_val,y_val);
hold on;
end
xlabel 'x (m)'
ylabel 'y (m)'
title 'Height'
figure
for vel = velocity
[x_val,y_val] = Arc(g,h,angle,vel);
plot(x_val,y_val);
hold on;
end
xlabel 'x (m)'
ylabel 'y (m)'
title 'Velocity'
function [x_val,y_val] = Arc(g,h,angle,v)
y = h;
t = 0;
x_val = [];
y_val = [];
while y >= 0
y=.5*g*t.^2+v*sind(angle)*t+h;
x=v*cosd(angle)*t;
t = t + 0.01;
x_val = [x_val,x];
y_val = [y_val,y];
end
end
Akzeptierte Antwort
Adam Danz
am 18 Nov. 2020
plot(x_val,y_val);
hold on;
[~,idx] = max(y_val);
plot(x_val(idx),y_val(idx),'r*')
text(x_val(idx),y_val(idx),'max','VerticalAlignment','Bottom','HorizontalAlignment','Left','FontSize',8)
xlabel 'x (m)'
ylabel 'y (m)'
title 'Original Data'
3 Kommentare
Adam Danz
am 19 Nov. 2020
Glad I could help.
Check out this answer that reviews some of the animation techniques.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Discrete Data Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!