1. 程式人生 > >Matlab學習手記——自定義Colormap

Matlab學習手記——自定義Colormap

    Colormap即色圖,不同的顏色表徵不同的數值,常用於繪製偽彩圖。

    目前新版本預設的colormap是parula,老版本預設的是jet,醫療成像常用hot等等。

    本質上來說,colormap是一個N*3的陣列,表徵的是R、G、B值,比如:

            

     另外,Matlab提供了色圖編輯器從Figure的編輯→顏色圖開啟:

    顏色條下方的滑塊,可以單擊滑鼠左鍵新增,Delete鍵刪除,雙擊滑塊,可以修改顏色:

    此時,可以通過colormap函式獲取當前的colormap,預設是64*3:

     然後將獲取到的colormap儲存到本地,下次使用的時候載入進來即可。

z = peaks(30);
surf(z)
colorbar
colormap(myColormap)

    PS:假如想獲取到256*3的colormap該怎麼辦呢?

       思路:先通過myColormap = parula(235);得到一組colormap,然後按照上述方法將myColormap載入進來,接著進入編輯模式,修改myColormap,最後通過myColormap = colormap;獲取當前的colormap。

      這種方式可以很輕鬆獲取到colormap的數值,在做其它偽彩對映的時候也是很方便的,比如:想將一個二維陣列顯示成偽彩圖,第一步是將二維陣列的陣列範圍對映到1到256(當然,這個範圍根據myColormap來定),然後將這個對映值作為下標,在myColormap中尋找對應位置的R、G、B值,即確定了改數值的顏色,這種思路在繪製偽彩圖的時候很有用。