При использовании пакета haploNet для создания графиков в сети гаплотипов я использовал для этого скрипт, доступный в Интернете. Однако я думаю, что что-то не так. Скрипт доступен в виде примера Woodmouse. Код, который я использовал:
x <- read.dna(file="Masto.fasta",format="fasta")
h <- haplotype(x)
net <- haploNet(h)
plot(net)
plot(net, size = attr(net, "freq"), fast = TRUE)
plot(net, size = attr(net, "freq"))
plot(net, size=attr(net, "freq"), scale.ratio = 2, cex = 0.8
table(rownames(x))
ind.hap<-with(
stack(setNames(attr(h, "index"), rownames(h))),
table(hap=ind, pop=rownames(x)[values])
)
ind.hap
plot(net, size=attr(net, "freq"), scale.ratio = 2, cex = 0.8, pie=ind.hap)
legend(50,50, colnames(ind.hap), col=rainbow(ncol(ind.hap)), pch=20)
legend(x=7,y=10,c("Baeti ero","Felege weyni","Golgole naele","Hagare selam","Ruba feleg","Ziway"),c("red","yellow","green","turquoise","blue","magenta"))
Однако при построении графика ind.hap вы можете заметить, что некоторые строки расположены не на своем месте. Вы можете увидеть это здесь:
pop
hap Baetiero ETH022 ETH742 Felegeweyni Golgolenaele Rubafeleg
I 0 0 1 0 0 0
II 0 1 0 0 0 0
III 1 0 0 1 0 1
IV 2 0 0 0 0 3
IX 0 0 0 1 0 0
V 4 0 0 0 2 0
VI 4 0 0 1 0 4
VII 2 0 0 1 0 0
VIII 0 0 0 1 0 1
X 3 0 0 0 1 0
XI 0 0 0 0 1 1
XII 0 0 0 1 0 0
XIII 0 0 0 0 0 1
Вы можете видеть, что ряд IX находится не на своем месте. Это не было бы слишком большой проблемой, но программа использует строку 9, чтобы построить круговую диаграмму для IX, которая является данными VIII. Вот результат: (Я не смог вставить изображение, так как моя репутация ниже 10..., вы все равно получите изображение, выполнив весь файл)
Вы можете видеть, что для V до IX это не так, как должно быть (это поменявшиеся местами строки). Например: IX имеет только 1 гаплотип, но есть круговая диаграмма для 2 гаплотипов (оба имеют 50% диаграммы), которая генерируется с использованием данных VIII. Поскольку строки сортируются по алфавиту, а не по возрастанию, но это присуще пакету, я не знаю, что делать. Я далек от мастера в R, поэтому постарайтесь не быть слишком абстрактным, а вместо этого предоставьте код.
Если есть кто-то, кто очень хорошо знает этот пакет, пожалуйста, объясните также, почему за реальными диаграммами (с цифрами на них) есть эти странные лишние линии, поскольку они не были видны в примере с лесной мышью (может быть, это из-за того, что не так слишком?)
Спасибо заранее