Passa al tema normale
Discussioni su argomenti di Informatica

Regole del forum

Consulta il nostro regolamento e la guida per scrivere le formule
Rispondi al messaggio

Plot in matlab con limiti diversi di colori colorbar/colormap

17/04/2019, 16:46

Salve a tutti.

Sto cercando di plottare con imagesc una matrice su matlab e ho bisogno del vostro aiuto.

Il mio codice è il seguente:

load Corr_matrix_IMS_All_Riordinato_Uncorrelated.txt

Valore_vect=min(Corr_matrix_IMS_All_Riordinato_Uncorrelated);
Min_matrix=min(Valore_vect);
Valore_vect_max=max(Corr_matrix_IMS_All_Riordinato_Uncorrelated);
Max_matrix=max(Valore_vect_max);

imagesc(Corr_matrix_IMS_All_Riordinato_Uncorrelated)
colormap(gray(4))
colorbar
caxis([Min_matrix Max_matrix]);

Metto in allegato la figura che ottengo dal codice.

Il problema che riscontro riguarda i limiti dei colori. Mettendo 4 colori, matlab equispazia tra il valore minimo (circa -1.55) e valore massimo (1).

Io vorrei mettere quattro colori in scala di grigio nei seguenti intervalli: da -0.55 a 0; da 0 a 0.5; da 0.5 a 0.9; da 0.9 a 1.

Purtroppo sto tribolando da 2 giorni e spero in un vostro aiuto.

Grazie mille in anticipo.

Immagine

Re: Plot in matlab con limiti diversi di colori colorbar/colormap

18/04/2019, 10:23

Non conosco la risposta ma ho trovato del materiale che potrebbe esserti utile:
https://stackoverflow.com/questions/17230837/how-to-create-a-custom-colormap-programmatically
https://stackoverflow.com/questions/20613841/how-to-generate-a-non-linear-colormap-colorbar/20629872#20629872
https://it.mathworks.com/help/matlab/ref/colormapeditor.html

Re: Plot in matlab con limiti diversi di colori colorbar/colormap

18/04/2019, 10:50

Confermo che il modo più veloce per ottenere il risultato rchiesto è usare il colormapeditor.

Ti mostro un esempio di quello che si può fare
Codice:
surf(peaks)
colormap(gray(100))
colorbar

Osserva che non ho diviso l'intervallo di colori in 4 parti ma in un numero elevato di parti.

Digito colormapeditor nella command window.

Ora aggiungo delle tacche per creare gli intervalli voluti. Nota bene che la tacca memorizza il colore in cui è stata creata.
Quindi creo una tacca subito a destra della prima tacca nera e la trascino fin dove voglio per creare il primo intervallo. Poi creo una tacca subito a destra di questa e la trascino e così via.
Rispondi al messaggio


Skuola.net News è una testata giornalistica iscritta al Registro degli Operatori della Comunicazione.
Registrazione: n° 20792 del 23/12/2010.
©2000— Skuola Network s.r.l. Tutti i diritti riservati. — P.I. 10404470014.