2

我想为我在 Java 中生成的一些凝聚集群显示漂亮的树状图。我将集群写入 Newick 格式的文件中。然后,我可以得到一张几乎是我想要的漂亮照片。

tr = phytreeread('myfile.tree')
phytreetool(tr)

在此处输入图像描述

不幸的是,X 轴不是我想要的。我更喜欢“反转”轴,因为聚类的迭代从右到左进行,例如firstNamesetFirstName在第一次迭代中得到聚类。有谁知道我该怎么做,或者至少关闭 X 轴标签?(无论如何,默认轴试图告诉我什么?)

4

2 回答 2

2

首先,您需要访问绘制树状图的轴的句柄。如果它是唯一打开的图形,您可以像这样使用函数FINDALL

phyAxes = findall(0,'Type','axes');

现在,您要更改的不是x 轴方向,因为这也会反转绘制的树状图。您实际上只想更改用于 x 轴刻度线的标签。如果你只想关闭它们,你可以这样做:

set(phyAxes,'XTick',[]);

现在,我不确定 x 轴要告诉你什么。在您的示例中,对于最左侧的分支点(我猜是“根”),似乎每个分支点都位于沿 x 轴的整数值处,从 0 开始。firstName包含and的最右边的分支setFirstName位于值 21。如果要更改轴标签,使最右边的分支位于 0,而最左边的分支位于 21,则可以按如下方式修改轴:

set(phyAxes,'XTick',0:21,'XTickLabel',num2str((21:-1:0).'));
于 2011-05-13T04:31:45.850 回答
0

这可以帮助你吗?

set(gca,'XDir','reverse')

编辑您可能会在这里 发现很多有趣的东西。干杯!

于 2011-05-12T23:24:48.963 回答