Colors 请帮我看一下这张热图

Colors 请帮我看一下这张热图,colors,scale,heatmap,Colors,Scale,Heatmap,我用以下代码编译了一个热图: compounds=uiimport('matrix.txt'); names=uiimport('names.txt'); stages=['Stage ' '3';'Stage ' '6';'Stage ' '9';]; imagesc(compounds.matrix); colorbar; colormap('winter'); title('Heat map of ...') ylabel('Compounds'); xlabel('Development

我用以下代码编译了一个热图:

compounds=uiimport('matrix.txt');
names=uiimport('names.txt');
stages=['Stage ' '3';'Stage ' '6';'Stage ' '9';];
imagesc(compounds.matrix);
colorbar;
colormap('winter');
title('Heat map of ...')
ylabel('Compounds');
xlabel('Developmental stage');
set(gca,'YTick',1:21,'YTickLabel',names.names)
set(gca,'XTick',1:3,'XTickLabel',stages)
一切工作正常,我不想更改代码,因为它来自上传我的数据,但是我不知道如何添加代码(或者我应该说什么类型的代码),以调整我的热图颜色在特定的比例数字。 我想要的是,它由红色变为绿色(0到10),值1为黑色。 此外,我的比例是0到100,但我希望比例在1到10之间可见,然后有一个间隙,在顶部只看到100


非常感谢。

这里没有列出语言要求,但我可以假设您使用的是matplotlib或matlab

您可以通过中断来指定请求的第一部分。设置某些范围。他们在这里有很好的解释

一种更为技术性的方法是实际创建自己的颜色贴图

colors = [('white')] + [(cm.jet(i)) for i in xrange(1,256)]
new_map = matplotlib.colors.LinearSegmentedColormap.from_list('new_map', colors, N=256)
在这里,您可以为本例中的特定范围指定颜色白色为0,其余为标准流动范围

学分: