Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab调整热图轴和颜色_Matlab - Fatal编程技术网

Matlab调整热图轴和颜色

Matlab调整热图轴和颜色,matlab,Matlab,我正在尝试创建一个我不太熟悉的热图。我有一个大矩阵的形式: One= [0 2 4 6 8 2 1 3 5 6 4 5 8 3 1 6 2 7 4 8 8 3 9 5 4] 我想创建一个热图,这样最上面的行和最左边的列就是轴。 到目前为止,我已经做到了: figure(1) Plot = One; colormap('hot'); imagesc(Plot); 我还注意到,在“热”颜色贴图中,小数字非常暗,大数字是白色。有没有办法扭转这种局面?这里是一个

我正在尝试创建一个我不太熟悉的热图。我有一个大矩阵的形式:

One=
[0 2 4 6 8
 2 1 3 5 6
 4 5 8 3 1
 6 2 7 4 8
 8 3 9 5 4]
我想创建一个热图,这样最上面的行和最左边的列就是轴。 到目前为止,我已经做到了:

figure(1)
Plot = One;     
colormap('hot');   
imagesc(Plot);       
我还注意到,在“热”颜色贴图中,小数字非常暗,大数字是白色。有没有办法扭转这种局面?

这里是一个良好的开端:

One = ...
[0 2 4 6 8
 2 1 3 5 6
 4 5 8 3 1
 6 2 7 4 8
 8 3 9 5 4];

figure();
imagesc(One(1,:), One(:,1), One(2:end,2:end));
get(gca(), 'ydir', 'normal')
colormap(flipud(hot()));
colorbar();

请注意,x&y轴大于数据,因此可能需要排除
one(1,1)


使用该函数生成颜色贴图,并使用以下方法将其倒置:

默认情况下,这将生成64种颜色。如果要指定不同的数字,例如128,请使用

colormap(flipud(hot(128)))

colormap(flipud(hot))
。您可能还希望为轴添加一个
颜色条
,您可以对矩阵进行索引,类似于data=One(2:end,2:end);然后定义你的两个轴,然后用这些轴值绘图。@Luis Mendo,你应该把它作为一个答案来写,尽管它很短,但在我看来它仍然是最好的答案。
colormap(flipud(hot))
colormap(flipud(hot(128)))