2015-04-27 296 views
0

我正在使用HeatMap對象,它提供了一個HeatMap,如下圖所示。Matlab HeatMap顏色問題

Heatmap I created

我使用下面的命令:

hmo=HeatMap(data,'ColumnLabels',collabels,'ColorMap','copper','RowLabels',rowlabels,'ColumnLabelsRotate',45,'Symmetric',true,'Standardize','ROW'); 

然而,我所需要的色標(在右側)是0至1,和最亮顏色應該代表最低值和副反之亦然。 任何幫助將不勝感激。

回答

2

要使最亮的顏色代表最低值,您需要反轉顏色圖順序。您可以通過獲取顏色映射矩陣和翻轉它這樣做的:

cmap = colormap('copper'); 
newcmap = flipud(cmap); 

因此而不是指定熱圖調用字符串「銅」,你應該通過newcmap

要調整熱圖創建後的彩條的限制,我相信你需要使用CLIM選項:

set(gca,'CLim', [0 1]) 
+0

謝謝,成功了!現在,我怎樣才能在這個熱圖上設置刻度? –

+0

這不是原來的問題!但嘗試設置(gca,'XTick',firstvalue:interval:lastvalue)。它與Y軸類似,但是您使用「YTick」選項。如果你喜歡上你的熱點地圖,可以試試這個提交:http://www.mathworks.com/matlabcentral/fileexchange/24253-customizable-heat-maps。如果問題解決成功,請考慮接受它作爲答案! – brodoll

+0

我其實是在嘗試。該命令正在執行,但地圖上未顯示任何刻度。 –