我想为我在 Java 中生成的一些凝聚集群显示漂亮的树状图。我将集群写入 Newick 格式的文件中。然后,我可以得到一张几乎是我想要的漂亮照片。
tr = phytreeread('myfile.tree')
phytreetool(tr)
不幸的是,X 轴不是我想要的。我更喜欢“反转”轴,因为聚类的迭代从右到左进行,例如firstName
并setFirstName
在第一次迭代中得到聚类。有谁知道我该怎么做,或者至少关闭 X 轴标签?(无论如何,默认轴试图告诉我什么?)
我想为我在 Java 中生成的一些凝聚集群显示漂亮的树状图。我将集群写入 Newick 格式的文件中。然后,我可以得到一张几乎是我想要的漂亮照片。
tr = phytreeread('myfile.tree')
phytreetool(tr)
不幸的是,X 轴不是我想要的。我更喜欢“反转”轴,因为聚类的迭代从右到左进行,例如firstName
并setFirstName
在第一次迭代中得到聚类。有谁知道我该怎么做,或者至少关闭 X 轴标签?(无论如何,默认轴试图告诉我什么?)
首先,您需要访问绘制树状图的轴的句柄。如果它是唯一打开的图形,您可以像这样使用函数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).'));