下面的示例脚本用于创建具有相同色阶限制的四个热图。我这样设置它是为了区分每个热图之间的差异;然而,差异几乎不可察觉。颜色当前设置为一般蓝色范围(浅蓝色至深蓝色)。我该怎么做才能将其改为热/冷配色方案?
cd C:\Users\Aiskya\Desktop\Subjects\total
A = dlmread('avg_data.txt')
cd C:\Users\Aiskya\Desktop\Subjects\total
B = dlmread('avg_data.txt')
cd C:\Users\Aiskya\Desktop\Subjects\total
C = dlmread('avg_data.txt')
cd C:\Users\Aiskya\Desktop\Subjects\total
D = dlmread('avg_data.txt')
minValue = min([A(:); B(:); C(:); D(:)]);
maxValue = max([A(:); B(:); C(:); D(:)]);
HA.ColorLimits = [minValue maxValue];
HB.ColorLimits = [minValue maxValue];
HC.ColorLimits = [minValue maxValue];
HD.ColorLimits = [minValue maxValue];
xvalues =
{'1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16'};
yvalues =
{'1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16'};
subplot(2,2,1)
HA = heatmap(xvalues,yvalues,A);
HA.Title = 'A';
HA.XLabel = 'regions';
HA.YLabel = 'regions';
HA.ColorLimits = [minValue maxValue];
总共有4个子图,看起来像上面的线条。所有的热图都显示在" MATLAB热图参考"有一个类似的颜色设置,我无法找到一个特定的属性谈论这个。我很感激帮助!
* Colorbar似乎没有为我做这个伎俩
答案 0 :(得分:2)
您可以使用Colormap
对象的HeatmapChart
属性更改使用的颜色映射:
HA.Colormap = parula(64);
(parula是数字的默认颜色图)或
HA.Colormap = hot(64);
要获取MATLAB中所有默认颜色映射的列表,请键入
help graph3d
(滚动到“彩色地图”的位置)。
请注意,在命令提示符下键入HA
时,您会看到HeatmapChart
对象的一些属性,但不是全部。列表底部是一个显示“显示所有属性”的链接。在那里,您可以找到有关这些热图的所有内容。还提供了更多信息in the documentation。