how to write in legend function ?

2 visualizzazioni (ultimi 30 giorni)
tomer polsky
tomer polsky il 15 Nov 2020
Commentato: tomer polsky il 16 Nov 2020
I want to write the function in the legend ,automtaic for exmaple :
n=0:10e3;
f=(log2(n)).^2;
c_gn=10*((log2(n)).^2);
plot(n,f,n,c_gn);
legend('(log2(n)).^2','10*((log2(n)).^2');
I want that in the leged to change aoutomtacli every time I change f or c_gn and not the expression of the vaule manually in the legend . how to do it ?

Risposta accettata

Walter Roberson
Walter Roberson il 15 Nov 2020
n = 0:10e3;
f_fun = @(n) (log2(n)).^2;
c_gn_fun = @(n) 10*((log2(n)).^2);
f_legend = regexprep(func2str(f_fun), '^.*?)', '');
c_gn_legend = regexprep(func2str(c_gn_fun), '^.*?)', '');
f = f_fun(n);
c_gn = c_gn_fun(n);
plot(n, f, n, c_gn);
legend({f_legend, c_gn_legend});

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by