我试图在Rstudio中使用ape和phytools包进行祖先重建。我的问题是,在我的系统发育树中,尖端标签/物种名称过于拥挤且难以辨认。目前,我的树有262种数据集。
可在此处找到数据nexus file的示例。
我到目前为止制作的祖传重建树在这里:http://i.imgur.com/WFoEu7S.png。
每个物种的字符状态为0或1,并且每个状态都有节点和尖端标签。最终我想用它们各自的角色状态(我有红色或黑色)给树枝上色。
理想情况下,我希望生成一个非超参数树,类似于前一个关于堆栈溢出in this link here的问题。
我已尝试从此链接为我自己的树实现R代码,但收效甚微。
以下是我在R中的代码。我还在学习R并且不熟悉某些绘图方法,并怀疑这可能是问题所在:
tree = read.nexus("test_nexus")
dichot_tree = multi2di(tree)
dichot_tree$edge.length<-runif(n=nrow(dichot_tree$edge),min=0,max=1)
dichot_tree$edge.length[dichot_tree$edge.length<1]<-1
domest = read.nexus.data("test_nexus")
aceDISCRETE<-ace(as.numeric(domest), dichot_tree, type="discrete")
plot(dichot_tree, cex=0.5, label.offset=1, no.margin=TRUE)
tiplabels(pch=22, bg=as.numeric(domest),cex=1, adj=1)
nodelabels(pie=aceDISCRETE$lik.anc, piecol=c("black", "red"), cex=0.25)
答案 0 :(得分:0)
有几种方法可以使提示标签更具可读性。
首先,您可以减小字体大小(即绘图函数的cex参数)。
其次,你正在使用RStudio,看起来你现在将你的绘图区域作为正方形。
您可以调整不同的面板,使绘图区域成为一个非常高的矩形,在绘制时可以扩展树。
或者,您可以创建一个外部绘图区域(我使用windows()
,您可以指定高度和宽度。)
或者,在RStudio中保存绘图时,您应该能够更改输出高度/宽度/宽高比。你也应该能够在这里做得更高。