所以,我有这个看起来像这样的excel文件(9 - 空,其他数字 - 数据):
9 9 9 9 9 9 9 9 9 9 9 9 9 9 9
9 9 9 9 9 9 9 2 2 1 1 1 2 2 9
9 9 9 9 9 9 2 3 1 1 1 1 3 2 9
9 9 9 9 9 1 1 1 1 1 1 1 1 1 9
9 9 9 9 1 1 1 1 1 1 1 1 1 1 9
9 9 9 1 1 1 1 1 1 1 1 1 1 1 9
9 9 2 1 1 1 1 1 1 1 1 1 1 2 9
9 2 3 1 1 1 1 4 1 1 1 1 3 2 9
9 2 1 1 1 1 1 1 1 1 1 1 2 9 9
9 1 1 1 1 1 1 1 1 1 1 1 9 9 9
9 1 1 1 1 1 1 1 1 1 1 9 9 9 9
9 1 1 1 1 1 1 1 1 1 9 9 9 9 9
9 2 3 1 1 1 1 3 2 9 9 9 9 9 9
9 2 2 1 1 1 2 2 9 9 9 9 9 9 9
9 9 9 9 9 9 9 9 9 9 9 9 9 9 9
我必须创建一个看起来像这样的图(像热图一样):
heat map http://b-inet.com/intellect/technology/nuclear-reactor/index_files/image011.gif
我需要为我的论文做这件事。问题是,我不是程序员。但有人告诉我,最好的工具是Matlab(虽然我确信,还有其他工具)。谁能帮我这个 ?
答案 0 :(得分:0)
首先:重新排列Excel计算以提供更好的格式化矩阵。然后使用此Matlab / Octave代码:
d=[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9;
9,9,9,9,2,2,1,1,1,2,2,9,9,9,9;
9,9,9,2,3,1,1,1,1,3,2,9,9,9,9;
9,9,9,1,1,1,1,1,1,1,1,1,9,9,9;
9,9,1,1,1,1,1,1,1,1,1,1,9,9,9;
9,9,1,1,1,1,1,1,1,1,1,1,1,9,9;
9,2,1,1,1,1,1,1,1,1,1,1,2,9,9;
9,2,3,1,1,1,1,4,1,1,1,1,3,2,9;
9,2,1,1,1,1,1,1,1,1,1,1,2,9,9;
9,9,1,1,1,1,1,1,1,1,1,1,1,9,9;
9,9,1,1,1,1,1,1,1,1,1,1,9,9,9;
9,9,9,1,1,1,1,1,1,1,1,1,9,9,9;
9,9,9,2,3,1,1,1,1,3,2,9,9,9,9;
9,9,9,9,2,2,1,1,1,2,2,9,9,9,9;
9,9,9,9,9,9,9,9,9,9,9,9,9,9,9]'
figure; hold on
s=size(d);
for i = 1:s(1)
for j=1:s(2)
if d(i,j)!=9
scatter(i+mod(j,2)/2,j, 40, d(i,j), 'filled');
end
end
end
colormap('hot');
axis equal;
colormap('hot')
命令生成此图中的颜色。如果你想要不同的颜色,请阅读colormap命令。