Многолетний читатель, впервые спрашивающий!
Итак, у меня есть филогенетическое дерево с 18 кончиками (AQ) и 17 внутренними узлами.Внутренние узлы помечены некоторыми цветными пирогами следующим образом:
plot(tree, cex = 0.8, label.offset= 1)
mbv <- c(1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,0)
nodelabels(pie = mbv, piecol = c("black", "white"), cex = 0.8)
trait <- c(0,0,0,0,0,1,1,1,0,0,0,0,0,1,1,1,1,1)
names(trait)<-tree$tip.label
tiplabels(pie = to.matrix(trait, sort(unique(trait))), piecol = c("black", "white"),
cex = 0.4)
Я пытаюсь экспортировать PNG-изображение высокого разрешения или Tiff-изображение этого дерева, но у меня возникли проблемы.
Оригинальный код:
Cairo(filename='SpeciesTree_withBins.png', type="png", res=300)
par(mar=c(1,1,1,1))
{plot(tree, cex = 0.8, label.offset= 1)
mbv <- c(1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,0)
nodelabels(pie = mbv, piecol = c("black", "white"), cex = 0.8)
trait <- c(0,0,0,0,0,1,1,1,0,0,0,0,0,1,1,1,1,1)
names(trait)<-tree$tip.label
tiplabels(pie = to.matrix(trait, sort(unique(trait))), piecol = c("black", "white"),
cex = 0.4)}
dev.off()
В результате возникла следующая ошибка:
Error in symbols(xpos, ypos, circles = radius, inches = FALSE, add = TRUE, :
plot.new has not been called yet
Попытка решения 1:
Cairo(filename='SpeciesTree_withBins.png', type="png", res=300)
{plot(tree, cex = 0.8, label.offset= 1)
mbv <- c(1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,0)
nodelabels(pie = mbv, piecol = c("black", "white"), cex = 0.8)
trait <- c(0,0,0,0,0,1,1,1,0,0,0,0,0,1,1,1,1,1)
names(trait)<-tree$tip.label
tiplabels(pie = to.matrix(trait, sort(unique(trait))), piecol = c("black", "white"),
cex = 0.4)}
dev.off()
Что дало мнедругая ошибка:
Error in plot.new() : figure margins too large
Попытка решения 2:
Cairo(filename='SpeciesTree_withBins.png', type="png", res=300)
par(mar=c(1,1,1,1))
{plot(tree, cex = 0.8, label.offset= 1)
mbv <- c(1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,0)
nodelabels(pie = mbv, piecol = c("black", "white"), cex = 0.8)
trait <- c(0,0,0,0,0,1,1,1,0,0,0,0,0,1,1,1,1,1)
names(trait)<-tree$tip.label
tiplabels(pie = to.matrix(trait, sort(unique(trait))), piecol = c("black", "white"),
cex = 0.4)}
dev.off()
При этом был получен PNG, но с именем 'plot', а не с 'SpeciesTree_withBins', и полученное изображение ужасно сжато,
Squashedplot
Я не уверен, как решить эту проблему.Может ли кто-нибудь помочь мне экспортировать дерево с меткой узла в высоком разрешении, которое не сжимается (и желательно с правильным именем файла)?