Cómo dibujar hermosos diagramas PCoA
El mapeo de PCoA se divide en tres pasos principales:
Seleccionar una distancia de similitud específica y calcular la matriz de distancia. La elección de la distancia puede ser Bray-curits, Unifrac, etc. Las diferentes distancias tienen diferentes funciones y significados (para obtener más detalles, consulte "Comparación de métodos de cálculo comúnmente utilizados para la diversidad beta microbiana"). Las distancias de similitud se pueden calcular utilizando paquetes como GUniFrac y vegan para R o QIIME.
Realice análisis PCoA, que utiliza análisis de características para seleccionar el eje que mejor representa las distancias de muestra. Esto se puede hacer usando el comando pcoa() en el paquete ape de R.
Representación gráfica de PCoA. Los gráficos se pueden mostrar usando el comando ordiplot(), pero si se requieren gráficos más hermosos, se recomienda ggplot.
A continuación mostraremos cómo dibujar gráficos de PCoA basados en la distancia Unifrac no ponderada basada en R:
----------------- - ---- Comienza el código-----------------------
#### Importa los paquetes R necesarios
library(GUniFrac) # usado para calcular la distancia Unifrac
library(ape) # usado para el análisis pcoa
library(ggplot2) # usado para dibujar gráficos
##Leer archivo
Otu_tab <- read.table( "otu_table",row.names=1,header=T,sep="t",check.names=FALSE) p>
Árbol <- read.tree("Muscle.align.tree.nhx") # Tabla OTU de entrada
Pestaña Otu_ <- as.data.frame(t(Otu_tab)) p>
Otu_tab_rff <- Rarefy(Otu_tab)$otu.tab.rff
unifracs <- GUniFrac(Otu_tab_rff,Tree.alpha=c(0, 0.5, 1))
du <- unifracs$unifracs[, , "d_UW"] # Calcular la distancia UniFrac no ponderada
Grupos <- c('A', 'B', 'C') # Ingresar muestras según el propósito p>
forma <- c("A" =16, "B" =17, "C" =16) #Definir la forma del punto
Color<- c("A " ='#CCFF33', "B" ='#CCFF33', "C" ='#CCFF33') #Definir el color del punto
PCOA <- pcoa(du, correct=" none" , rnn) #Definir el color del punto
PCOA <- pcoa(du, correct="none", rnn) correct="none", rn=NULL) #Usar el PCOA() instrucción para análisis PCOA
resultado <- PCOA$values[, "Relative_eig"]
pro1 = as.numeric(sprintf("%.3f", resultado[1])) *100
pro2 = as.numeric(sprintf("%.3f", resultado[2]))*100
x = PCOA$vectores
nombres_de_muestra = nombres de fila(x)