Red de conocimiento informático - Conocimiento de Internet de las cosas - Cómo dibujar hermosos diagramas PCoA

Cómo dibujar hermosos diagramas PCoA

Aunque el análisis de PCoA se incluye en procesos de análisis generales como 16S o análisis metagenómico, si desea cambiar la forma de las agrupaciones o elegir OTU específicas para el análisis, es más eficiente hacerlo usted mismo.

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)

Árbol <- read.tree("Muscle.align.tree.nhx") # Tabla OTU de entrada

Pestaña Otu_ <- as.data.frame(t(Otu_tab))

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

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)