这里我有另一个“图形”问题:
我从MOTHUR得到了以下距离矩阵(来自加权的unifrac分析):
20
F3D0
F3D1 0.222664
F3D141 0.157368 0.293308
F3D142 0.180278 0.319198 0.0944511
F3D143 0.157659 0.290975 0.0545202 0.0761392
F3D144 0.199909 0.34045 0.104358 0.086418 0.089473
F3D145 0.207946 0.348532 0.107841 0.076302 0.0940067 0.051632
F3D146 0.117877 0.253996 0.0891617 0.130867 0.0882064 0.134407 0.138415
F3D147 0.197256 0.336583 0.102114 0.0764106 0.0890669 0.0514887 0.0479297 0.135324
F3D148 0.173824 0.311951 0.0606815 0.0648557 0.056463 0.074914 0.0811015 0.111996 0.0709027
F3D149 0.145614 0.276632 0.0462779 0.105512 0.0628737 0.10902 0.114584 0.0739466 0.107123 0.0690412
F3D150 0.129557 0.277624 0.0840909 0.128305 0.0863231 0.140256 0.145381 0.0744572 0.13672 0.113564 0.0659831
F3D2 0.133531 0.216587 0.160832 0.186833 0.176061 0.214934 0.215261 0.152591 0.205629 0.188325 0.156313 0.153841
F3D3 0.213102 0.305651 0.123818 0.113021 0.139376 0.148558 0.13853 0.174377 0.139851 0.126329 0.131294 0.166738 0.137784
F3D5 0.128668 0.185235 0.167733 0.205183 0.176585 0.224806 0.230984 0.14497 0.223492 0.18933 0.153624 0.148617 0.127574 0.192433
F3D6 0.139411 0.236633 0.135418 0.124848 0.134198 0.175098 0.166205 0.118905 0.166144 0.151842 0.120964 0.12724 0.0950943 0.119852 0.129523
F3D7 0.198884 0.315888 0.130385 0.0989168 0.131945 0.14625 0.126203 0.173689 0.128993 0.121373 0.140199 0.152123 0.152893 0.0906675 0.186674 0.111134
F3D8 0.178656 0.18783 0.205737 0.22104 0.219858 0.268701 0.2644 0.184943 0.268051 0.229503 0.1979 0.20035 0.164427 0.203089 0.119084 0.142398 0.185551
F3D9 0.153265 0.186706 0.196143 0.21504 0.20728 0.262127 0.255558 0.174563 0.2607 0.221969 0.192437 0.185154 0.13976 0.195538 0.0973901 0.127619 0.177605 0.0558726
Mock 0.653789 0.645344 0.633297 0.623553 0.633903 0.633135 0.63394 0.635815 0.645332 0.636453 0.629143 0.646918 0.663222 0.639517 0.649722 0.64073 0.654882 0.63988 0.646155由于这个距离矩阵来自一个PCoA,我想要做的是在排序图中用R绘制这些距离。
知道该怎么做吗?
非常感谢
发布于 2017-07-06 10:47:15
您有带有vegan函数的metaMDS库,它使用这样的距离矩阵作为输入,为每个样本生成坐标。
让我们调用M到您的矩阵,您需要运行以下代码:
# Load the library
library(vegan)
# Use metaMDS function for 2D - plot
NMDS <- metaMDS(distance = M, k = 2)
# Plot your individuals
plot(NMDS$points[,1], NMDS$points[,2])在NMDS$points中,您有每个样本的坐标。我建议根据一个感兴趣的因素,例如在生物医学分析中的病例和对照来对个体进行着色。
发布于 2017-07-07 10:13:16
多亏了@R18,我终于能处理好这个问题了。
对于我上传的距离表,我找到的解决方案是使用以下代码:
library(phyloseq)
library(vegan)
M <- import_mothur_dist("pcoa_UFdistance_matrix.dist")
unifrac <- metaMDS(M, distance = M, k = 2, trymax=100)
plot(unifrac$points[,1], unifrac$points[,2], main="Principal Coordinates Analysis", col.main="red", font.main=4, xlab="PCoA 1", ylab="PCoA 2")
text(unifrac, pos=3)希望它能帮助别人!
https://stackoverflow.com/questions/44946231
复制相似问题