How to plot an anonymous function with multiple variables

20 vues (au cours des 30 derniers jours)
Greg
Greg le 15 Juil 2022
Modifié(e) : Stephen23 le 31 Juil 2022
I need to plot a function that I have created as an anonymous function
I appreciate any help I can get!
Thanks!

Réponse acceptée

Voss
Voss le 15 Juil 2022
With the function as given, you can calculate its value for each a in a loop:
Func2 = @(a,b,c) 20*b^2-4*a^6+20+4*c;
a = 0:0.25:10;
b = -3;
c = 8;
vals = zeros(size(a));
for ii = 1:numel(vals)
vals(ii) = Func2(a(ii),b,c);
end
and plot:
plot(a,vals,'.-')
Or you could vectorize the function and calculate its values for all a at once:
Func2 = @(a,b,c) 20*b.^2-4*a.^6+20+4*c; % now any of a,b,c can be a vector (or all of them, if they are the same size)
a = 0:0.25:10;
b = -3;
c = 8;
vals = Func2(a,b,c);
and plot:
plot(a,vals,'.-')
  2 commentaires
Greg
Greg le 15 Juil 2022
Ah, I hadn’t even seen the vals function before. Thank you! What does the “.-“ do in the plot function?
Voss
Voss le 15 Juil 2022
vals is a variable I made to store the values of Func2 at the given a, b, c. The line
vals = Func2(a,b,c);
evaluates the function Func2 at a, b, c, and stores the result in vals.
.- plots the line using dots as a data marker ( . ) and using a solid line ( - )

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Programming dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by