MATLAB - Tracciare
Per tracciare il grafico di una funzione, è necessario eseguire i seguenti passaggi:
Definire x, specificando il range of values per la variabile x, per cui deve essere tracciata la funzione
Definisci la funzione, y = f(x)
Chiama il plot comando, come plot(x, y)
L'esempio seguente dimostrerebbe il concetto. Tracciamo la funzione semplicey = x per l'intervallo di valori per x da 0 a 100, con un incremento di 5.
Crea un file di script e digita il codice seguente:
x = [0:5:100];
y = x;
plot(x, y)
Quando esegui il file, MATLAB mostra il seguente grafico:
Prendiamo un altro esempio per tracciare la funzione y = x 2 . In questo esempio, disegneremo due grafici con la stessa funzione, ma nella seconda volta, ridurremo il valore di incremento. Si noti che diminuendo l'incremento, il grafico diventa più fluido.
Crea un file di script e digita il codice seguente:
x = [1 2 3 4 5 6 7 8 9 10];
x = [-100:20:100];
y = x.^2;
plot(x, y)
Quando esegui il file, MATLAB mostra il seguente grafico:
Cambia leggermente il file di codice, riduci l'incremento a 5 -
x = [-100:5:100];
y = x.^2;
plot(x, y)
MATLAB traccia un grafico più fluido -
Aggiunta di titolo, etichette, linee della griglia e scala sul grafico
MATLAB ti consente di aggiungere titolo, etichette lungo l'asse xe l'asse y, linee della griglia e anche di regolare gli assi per abbellire il grafico.
Il xlabel e ylabel i comandi generano etichette lungo l'asse xe l'asse y.
Il title il comando ti permette di inserire un titolo nel grafico.
Il grid on Il comando consente di inserire le linee della griglia sul grafico.
Il axis equal il comando permette di generare il grafico con gli stessi fattori di scala e gli spazi su entrambi gli assi.
Il axis square il comando genera un grafico quadrato.
Esempio
Crea un file di script e digita il codice seguente:
x = [0:0.01:10];
y = sin(x);
plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'),
grid on, axis equal
MATLAB genera il seguente grafico:
Disegnare più funzioni sullo stesso grafico
Puoi disegnare più grafici sullo stesso grafico. Il seguente esempio dimostra il concetto:
Esempio
Crea un file di script e digita il codice seguente:
x = [0 : 0.01: 10];
y = sin(x);
g = cos(x);
plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')
MATLAB genera il seguente grafico:
Impostazione dei colori sul grafico
MATLAB fornisce otto opzioni di colore di base per disegnare grafici. La tabella seguente mostra i colori e i relativi codici:
Codice | Colore |
---|---|
w | bianca |
K | Nero |
b | Blu |
r | Rosso |
c | Ciano |
g | verde |
m | Magenta |
y | Giallo |
Esempio
Disegniamo il grafico di due polinomi
f (x) = 3x 4 + 2x 3 + 7x 2 + 2x + 9 e
g (x) = 5x 3 + 9x + 2
Crea un file di script e digita il codice seguente:
x = [-10 : 0.01: 10];
y = 3*x.^4 + 2 * x.^3 + 7 * x.^2 + 2 * x + 9;
g = 5 * x.^3 + 9 * x + 2;
plot(x, y, 'r', x, g, 'g')
Quando esegui il file, MATLAB genera il seguente grafico:
Impostazione delle scale degli assi
Il axisil comando consente di impostare le scale degli assi. È possibile fornire i valori minimi e massimi per gli assi xey utilizzando il comando dell'asse nel modo seguente:
axis ( [xmin xmax ymin ymax] )
L'esempio seguente mostra questo:
Esempio
Crea un file di script e digita il codice seguente:
x = [0 : 0.01: 10];
y = exp(-x).* sin(2*x + 3);
plot(x, y), axis([0 10 -1 1])
Quando esegui il file, MATLAB genera il seguente grafico:
Generazione di sotto-grafici
Quando crei una serie di grafici nella stessa figura, ognuno di questi grafici viene chiamato sottotrama. Ilsubplot comando viene utilizzato per creare sottotrame.
La sintassi del comando è:
subplot(m, n, p)
dove, m e n sono il numero di righe e colonne della matrice del grafico e p specifica dove mettere un particolare grafico.
Ogni grafico creato con il comando sottotrama può avere le proprie caratteristiche. L'esempio seguente dimostra il concetto:
Esempio
Generiamo due grafici:
y = e −1,5x sin (10x)
y = e −2x sin (10x)
Crea un file di script e digita il codice seguente:
x = [0:0.01:5];
y = exp(-1.5*x).*sin(10*x);
subplot(1,2,1)
plot(x,y), xlabel('x'),ylabel('exp(–1.5x)*sin(10x)'),axis([0 5 -1 1])
y = exp(-2*x).*sin(10*x);
subplot(1,2,2)
plot(x,y),xlabel('x'),ylabel('exp(–2x)*sin(10x)'),axis([0 5 -1 1])
Quando esegui il file, MATLAB genera il seguente grafico: