How would I plot this and then achieve minimum and maximum.
Show older comments
This is the equation
My script looks like this and fails
x=0:0.1:15
y=(x)^3/3-11(x)^2/2+24x
plot(x,y)
Not yet got my head around MatlB
1 Comment
Dyuman Joshi
on 21 Nov 2023
Moved: Dyuman Joshi
on 21 Nov 2023
Look into
Accepted Answer
More Answers (1)
Hi @Tom
The cubic function does not have global extrema, but it does have a local maximum point and a local minimum point. Are you looking to plot something similar to this?
%% Find local max and local min over a certain range
y = @(x) x.^3/3 - 11*x.^2/2 + 24*x;
xlocal = linspace(1, 10, 90001);
ymax = max(y(xlocal))
idx1 = find(y(xlocal) == ymax);
xmax = xlocal(idx1)
ymin = min(y(xlocal))
idx2 = find(y(xlocal) == ymin);
xmin = xlocal(idx2)
%% Plot function over a predefined range
x = 0:0.1:15;
plot(x, y(x)), grid on, hold on
plot(xmax, ymax, 'o', 'markersize', 12, 'linewidth', 2)
plot(xmin, ymin, 'o', 'markersize', 12, 'linewidth', 2)
xlabel('x'), ylabel('y')
xt = [xmax-1 xmin-1];
yt = [ymax+15 ymin+15];
str = {'local max','local min'};
text(xt, yt, str)
2 Comments
Dyuman Joshi
on 21 Nov 2023
I'm a curious as to why you chose to use max() and min() instead of islocalmax() and islocalmin().
Sam Chak
on 22 Nov 2023
Sometimes, I'm accustomed to using functions with the same name in other software. It's good that you introduced islocalmax() and islocalmin().
Categories
Find more on Logical 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!
