0

基于三种不同的实验条件(α、β 和 γ),我有一个蛋白质列表和每种蛋白质的值。包含这些值的数组称为“heatmap_data”。蛋白质的名称在名为“text”的数组中

我生成了一个热图:

rows = ['ALPHA' ;'BETA '; 'GAMMA']
rowscell = cellstr(rows)
dm=DataMatrix(heatmap_data,rowscell,text);
cg = clustergram(dm,'Standardize','none');
cgAxes =plot(cg);
set(cgAxes, 'Clim', [-1,1])

当蛋白质列表很短时,我得到了预期的热图,显示了 x 轴的标签 在此处输入图像描述

但是,当列表扩展到数百个时,名称就会消失。 在此处输入图像描述

我可以理解标签可能不适合短空间,但如果它们是写的,我可以减小字体大小,或扩大树状图等

我的问题:有没有办法强制 MATLAB 显示列名,即使它们重叠,或者我可以按照树状图排序的相同顺序保存名称的函数,这样我就可以识别每个簇中的蛋白质?

谢谢

4

1 回答 1

0

好的,我发现了这个: https ://www.mathworks.com/help/bioinfo/ref/clustergram.html

RowLabelsValue 数字向量或字符向量元胞数组,用于标记树状图和热图中的行。默认是值 1 到 M 的向量,其中 M 是 Data 中的行数。注意:
如果行标签的数量为 200 或更多,则标签不会出现在聚类图图中,除非您放大图。

现在,如果我放大,我可以看到名称。

于 2017-05-09T17:50:56.797 回答