[Matlab] Legenda plot iterativa
Salve.
Ho iniziato da qualche tempo ad usare Matlab (e a studiare Calcolo numerico). Ho la necessità di produrre il grafico di una grandezza $D(\beta;\xi)$ con $\beta$ variabile indipendente e $\xi$ parametro. In pratica, devo produrre sullo stesso grafico più curve, una per ogni valore del parametro.
Ho scritto questo codice per il grafico:
Volevo chiedere se c'è un modo (e penso di sì) di creare la legenda del grafico associata ad ogni curva di parametro $xi_i$, in modo da poter risalire a quale valore del parametro si riferisce ciascuna curva.
Ho provato a cercare su forum e ho trovato parecchi esempi di codice, ma al momento vanno al di là delle mie scarse conoscenza di Matlab, per cui non riesco a trasporre quei codici al mio caso.
Grazie.
Ho iniziato da qualche tempo ad usare Matlab (e a studiare Calcolo numerico). Ho la necessità di produrre il grafico di una grandezza $D(\beta;\xi)$ con $\beta$ variabile indipendente e $\xi$ parametro. In pratica, devo produrre sullo stesso grafico più curve, una per ogni valore del parametro.
Ho scritto questo codice per il grafico:
clear all clc close all xi = [0.01 0.1 0.2 0.3 0.5 0.7 1]; % vettore del parametro (smorzamento) beta = linspace(0,3,200); % vettore delle ascisse (rapporto di frequenza) D = zeros(length(xi),length(beta)); % inizializzazione for i=1:length(xi) D(i,:) = 1./sqrt( (1-beta.^2).^2 + (2*xi(i)*beta).^2 ); end plot(beta,D) grid on xlim([0 3]) ylim([0 5])
Volevo chiedere se c'è un modo (e penso di sì) di creare la legenda del grafico associata ad ogni curva di parametro $xi_i$, in modo da poter risalire a quale valore del parametro si riferisce ciascuna curva.
Ho provato a cercare su forum e ho trovato parecchi esempi di codice, ma al momento vanno al di là delle mie scarse conoscenza di Matlab, per cui non riesco a trasporre quei codici al mio caso.
Grazie.
Risposte
devi usare legend, prova a seguire quello fatto qui:
https://it.mathworks.com/help/matlab/cr ... tExample-6
https://it.mathworks.com/help/matlab/cr ... tExample-6
Grazie. Mentre attendevo la risposta, ho risolto (forse in modo rudimentale) scrivendo le etichette nello stesso ordine in cui compaiono gli elementi del parametro:
Sicuramente ci sono modi più raffinati, ma per il momento mi va bene così.
Grazie ancora. Ovviamente accetto suggerimenti.
legend ('\xi_1=0.01','\xi_2=0.1','\xi_3=0.2','\xi_4=0.3','\xi_5=0.5', '\xi_6=0.7', '\xi_7=1')
Sicuramente ci sono modi più raffinati, ma per il momento mi va bene così.
Grazie ancora. Ovviamente accetto suggerimenti.
Beh se non hai troppi elementi puoi tenere pure così, in effetti 
Altrimenti sul forum di matlab o su stack dovresti trovare tutto

Altrimenti sul forum di matlab o su stack dovresti trovare tutto