MATLAB traccia la mappa dei colori

Ammar Ali 15 febbraio 2024
  1. Traccia una mappa dei colori usando la funzione mesh() in MATLAB
  2. Traccia una mappa dei colori usando la funzione meshc() in MATLAB
  3. Traccia una mappa dei colori usando la funzione meshz() in MATLAB
  4. Traccia una mappa dei colori usando la funzione surf() in MATLAB
MATLAB traccia la mappa dei colori

In questo tutorial, discuteremo di come tracciare una mappa dei colori usando le funzioni mesh(), meshc(), meshz() e surf() in MATLAB.

Traccia una mappa dei colori usando la funzione mesh() in MATLAB

Per tracciare la mappa dei colori di una data matrice, puoi usare la funzione mesh(), che traccia la variabile su un dato asse x e y. Se le coordinate non vengono fornite, utilizzerà gli indici della matrice come coordinate. La funzione mesh() traccia una data matrice come altezze sulla coordinata data. Per fornire le coordinate come input alla funzione mesh(), devi usare la funzione meshgrid() per creare una mesh di coordinate su cui verrà tracciata la matrice data. Vedi il codice qui sotto.

a = 0:0.1:10;
z = [sin(a);sin(a)];
mesh(z)
colorbar

Produzione:

Matlab ColorMap utilizzando la funzione mesh - 1

Nel codice sopra, abbiamo tracciato la mappa dei colori di un’onda sinusoidale. La mappa dei colori assegna il valore più basso al colore più freddo e il valore più alto al colore più caldo. Come puoi vedere nella figura, all’aumentare del valore dell’onda sinusoidale, il colore si sposta da una regione più fredda a una più calda e viceversa. Puoi anche mostrare la barra dei colori usando la funzione colormap. Dalla barra dei colori, puoi vedere quale valore è assegnato a quale colore. È inoltre possibile modificare la mappa dei colori nella gamma di colori desiderata utilizzando la funzione colormap. Ad esempio, tracciamo l’onda sinusoidale sopra su una mappa dei colori estiva. Vedi il codice qui sotto.

a = 0:0.1:10;
z = [sin(a);sin(a)];
mesh(z)
colormap summer
colorbar

Produzione:

Matlab ColorMap utilizzando la funzione mesh - 2

Ora tracciamo una matrice su una data coordinata. Per prima cosa, dobbiamo creare una griglia mesh usando la funzione meshgrid() e poi passare le coordinate insieme alla matrice per tracciare la matrice data su coordinate date. Vedere il codice di esempio di seguito.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
mesh(x,y,z)
colorbar

Produzione:

Matlab ColorMap - 3

Puoi vedere che le coordinate x e y sono esattamente le stesse delle coordinate fornite nella figura sopra. Puoi tracciare la matrice data su qualsiasi coordinata x e y. Ora, cambiamo questo grafico 3D in 2D con l’aiuto della funzione view(). Questa funzione cambia la visualizzazione del grafico. Usando questa funzione, possiamo vedere solo due coordinate. Vedi il codice sottostante.

a = 0:0.1:30;
z = [sin(a); sin(a)];
mesh(z)
colorbar
view(2)

Produzione:

Matlab ColorMap - 4

Nel codice sopra, abbiamo tracciato l’onda sinusoidale e cambiato il diagramma da 3D a 2D utilizzando la funzione view(). Come puoi vedere nella figura, all’aumentare del valore dell’onda sinusoidale, il colore si sposta da una regione più fredda a una più calda e viceversa. Puoi vedere la barra dei colori per controllare quale valore è assegnato a quale colore. Puoi anche modificare altre proprietà della mesh come il colore del bordo usando la proprietà EdgeColor, lo stile della linea usando la proprietà LineColor, il colore del viso usando la proprietà FaceColor, ecc. Ad esempio, cambiamo il colore del viso in piatto usando il Proprietà FaceColor nella funzione mesh(). Vedi il codice qui sotto.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
mesh(x,y,z,'FaceColor','Flat')
colorbar

Produzione:

Matlab ColorMap - 5

Nel codice sopra, abbiamo cambiato il colore della faccia del grafico a maglie in piatto, il che significa che la superficie del grafico sarà piatta, come mostrato nella figura sopra. Controlla questo link per maggiori informazioni sulla funzione mesh() e sulle proprietà.

Traccia una mappa dei colori usando la funzione meshc() in MATLAB

Per tracciare la mappa dei colori di una data matrice, puoi usare la funzione meshc(), che traccia la mappa dei colori della variabile su un dato asse x e y e aggiunge il grafico di contorno sotto il grafico della mesh. Se le coordinate non vengono fornite, utilizzerà gli indici della matrice come coordinate. La funzione meshc() traccia una data matrice come altezze sulla coordinata data. Per dare le coordinate come input alla funzione meshc(), devi usare la funzione meshgrid() per creare una mesh di coordinate su cui verrà tracciata la matrice data. Ad esempio, tracciamo una matrice. Vedi il codice qui sotto.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
meshc(x,y,z)
colorbar

Produzione:

Matlab ColorMap - 6

È inoltre possibile modificare la mappa dei colori nella gamma di colori desiderata utilizzando la funzione colormap. Ad esempio, tracciamo l’onda sinusoidale sopra su una mappa dei colori estiva. Vedi il codice qui sotto.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
meshc(x,y,z)
colorbar
colormap winter

Produzione:

Matlab ColorMap - 7

Puoi anche cambiare il colore del bordo della mesh e il colore del bordo del contorno usando la proprietà EdgeColor nella funzione meshc(). Vedi il codice sottostante.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
sc = meshc(x,y,z)
sc(1).EdgeColor = 'r';
sc(2).EdgeColor = 'b';
colorbar

Produzione:

Matlab ColorMap - 8

Nel codice sopra, cambiamo il colore del bordo del grafico a maglie in rosso e il colore del bordo del grafico a contorni in blu. Puoi selezionare qualsiasi colore desideri tra i colori disponibili. È inoltre possibile modificare la posizione del grafico del contorno nella figura. Ad esempio, cambiamo la posizione del diagramma di contorno e lo tracciamo sull’asse z utilizzando la proprietà Zlocation. Vedi il codice qui sotto.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
sc = meshc(x,y,z)
sc(2).ZLocation = 'zmax';
colorbar

Produzione:

Matlab ColorMap - 9

Controlla questo link per maggiori informazioni sulla funzione meshc().

Traccia una mappa dei colori usando la funzione meshz() in MATLAB

Per tracciare la mappa dei colori di una data matrice, puoi usare la funzione meshz(), che traccia la mappa dei colori della variabile su un dato asse x e y e aggiunge la tenda sotto il grafico della mesh. Se le coordinate non vengono fornite, utilizzerà gli indici della matrice come coordinate. La funzione meshz() traccia una data matrice come altezze sulla coordinata data. Per dare le coordinate come input alla funzione meshz(), devi usare la funzione meshgrid() per creare una mesh di coordinate su cui verrà tracciata la matrice data. Ad esempio, tracciamo una matrice. Vedi il codice qui sotto.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
meshz(x,y,z)
colorbar

Produzione:

Matlab ColorMap - 10

È inoltre possibile modificare la mappa dei colori nella gamma di colori desiderata utilizzando la funzione colormap. Ad esempio, tracciamo l’onda sinusoidale sopra su una mappa dei colori estiva. Vedi il codice qui sotto.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
meshz(x,y,z)
colorbar
colormap winter

Produzione:

Matlab ColorMap - 11

Puoi anche cambiare il colore del bordo della trama usando la proprietà EdgeColor nella funzione meshz(). Vedi il codice sottostante.

a = 0:0.1:10;
b = 0:10;
[x,y] = meshgrid(a,b);
z = sin(x) + sin(y);
sc = meshz(x,y,z)
sc(1).EdgeColor = 'g';

Produzione:

Matlab ColorMap - 12

Nel codice sopra, cambiamo il colore del bordo del grafico a maglie in blu. Puoi selezionare qualsiasi colore desideri tra i colori disponibili. Controlla questo link per maggiori dettagli sulla funzione meshz().

Traccia una mappa dei colori usando la funzione surf() in MATLAB

La funzione surf() si comporta esattamente come la funzione mesh() con una sola differenza che la funzione surf() traccia la matrice con i colori della faccia a tinta unita mentre la funzione mesh() traccia la matrice senza faccia colori. A parte questa differenza, surf() e mesh() sono le stesse funzioni. Controllare la funzione mesh() descritta sopra. Controlla questo link per maggiori informazioni sulla funzione surf().

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