Legenda personalizzata in MATLAB

Ammar Ali 20 giugno 2021
  1. Aggiungi legende personalizzate usando la funzione legend() in MATLAB
  2. Aggiungi legende personalizzate usando la funzione text() in MATLAB
Legenda personalizzata in MATLAB

In questo tutorial, discuteremo come aggiungere legende personalizzate alla trama utilizzando le funzioni legend() e text() in MATLAB.

Aggiungi legende personalizzate usando la funzione legend() in MATLAB

La funzione legend() viene utilizzata per aggiungere legende a un grafico in MATLAB. Ma il problema è che aggiunge solo una leggenda su una trama. Se provi ad aggiungere più di una legenda utilizzando questa funzione, MATLAB restituirà un errore. Quindi, per aggiungere legende personalizzate che non hanno alcuna relazione con il grafico, devi aggiungere più grafici sulla figura con valori indefiniti, quindi puoi aggiungere più legende. Non vedrai le trame perché i loro valori non sono definiti, ma vedrai le leggende. Ad esempio, aggiungiamo legende personalizzate a un grafico dell’onda del coseno. Vedi il codice qui sotto.

t = 1:0.01:2;
plot(cos(2*pi*t))
hold on
p(1) = plot(NaN,NaN);
p(2) = plot(NaN,NaN);
p(3) = plot(NaN,NaN);
hold off
legend(p,'Cos1','Cos2','Cos3')

Produzione:

Legenda personalizzata Utilizzando la funzione legend() in matlab

Nel codice sopra, abbiamo aggiunto tre leggende su un grafico dell’onda del coseno e puoi vedere che non sono correlate al grafico. Puoi aggiungere tutte le leggende che vuoi su una figura; devi solo aggiungere più grafici con valori indefiniti sulla stessa figura. Controlla questo link per maggiori informazioni sulla funzione legend().

Aggiungi legende personalizzate usando la funzione text() in MATLAB

Possiamo anche usare la funzione text() per aggiungere testo alla trama. Devi passare le coordinate x e y su cui vuoi posizionare il testo. È sufficiente tracciare la variabile e quindi selezionare le coordinate dal diagramma e quindi utilizzare la funzione text() per posizionare il testo sulle coordinate selezionate. Se dai le coordinate che non si trovano sulla trama, non sarai in grado di vedere il testo. Puoi anche cambiare le proprietà del testo come la dimensione del carattere usando la proprietà FontSize e il colore usando la proprietà Color ecc. Per esempio, tracciamo un’onda coseno e mettiamoci sopra del testo con la dimensione del carattere 18 e rosso colore. Vedi il codice qui sotto.

t = 1:0.01:2;
plot(cos(2*pi*t))
t = text(100,0.8,'Cos1','FontSize',18,'Color','r')

Produzione:

Legenda personalizzata Utilizzando la funzione text() in Matlab

Ora aggiungiamo una linea blu prima del testo e una casella nera attorno al testo e alla linea. Vedi il codice qui sotto.

t = 1:0.01:2;
plot(cos(2*pi*t))
tex = text(95,0.8,'{\color{blue} ---} Cos','FontSize',18,'Color','k','EdgeColor','k')

Produzione:

Legende personalizzate Usando la funzione text() in Matlab

Puoi dare il colore desiderato alla linea definendolo prima della linea nella cella, il testo usando la proprietà Color e il riquadro usando la proprietà EdgeColor. È inoltre possibile aggiungere più testi in più posizioni del grafico con testo, stili di linea, colore, dimensione e riquadro diversi. Ad esempio, aggiungiamo un altro testo al grafico sopra con il testo Cosine di colore rosso, l’indicatore * di colore verde, una casella di colore giallo e la dimensione del carattere 18. Vedi il codice qui sotto.

t = 1:0.01:2;
plot(cos(2*pi*t))
tex1 = text(95,0.8,'{\color{blue} ---} Cos','FontSize',18,'Color','k','EdgeColor','k')
tex2 = text(89,0.4,'{\color{red} *} Cosine','FontSize',18,'Color','g','EdgeColor','y')

Produzione:

Legende personalizzate Usando la funzione text() in Matlab

Puoi anche inserire più stringhe nella stessa casella creando un array di celle delle stringhe. Controlla questo link per maggiori informazioni sulla funzione text().

Autore: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Articolo correlato - MATLAB Plot