我已根据标准化值的数据集生成了一个簇图,但我想尝试沿y轴重新排序样本。在google搜索之后,我还没有找到关于如何去做的很多信息。下面是我的代码到目前为止:任何帮助将不胜感激。
[num, txt]= xlsread('S:\Breast\Breast Stats no post XRT.xls', 'Breast heat');
PID= txt(2:93,1);
varname = txt(1,2:23);
cgram = clustergram(num(1:92,:));
set(cgram,'Standardize',3,'Cluster',3, 'RowLabels',PID(:,:), 'ColumnLabels', varname(:,:),...
'Linkage','ward','Dendrogram',3,'ColumnPdist', 'euclidean', 'RowPdist', 'euclidean', 'OptimalLeafOrder', 'true',...
'SymmetricRange', 'false');
另外,有没有人知道如何为一个特定的轴设置标签的字体大小?
答案 0 :(得分:0)
关于主要问题:
假设您将nx2中的数据放入矩阵A
,那么您可以根据以下列对其进行排序:
[Y,I]=sort(A(:,2)); % Sort by column 2 of the matrix
B=A(I,:); %use the indices from sort() to sort all rows of A.
答案 1 :(得分:0)
要重新排序clustergram中的元素,可以设置clustergram的OptimalLeafOrder
属性。
要设置标签的字体大小,可以使用addXLabel
或addYLabel
命令,然后直接设置返回的文本对象的FontSize
属性。
有关详细信息和示例,请参阅doc clustergram
和doc addXLabel
。