雷達圖在單細胞數據分析中的應用

聽過周老師的課的同學,應該有印象:周老師在講單細胞數據結構的時候提到過,單細胞數據是表達量數據,每個數值表示的是表達量,也就是含量,是一個非負數。表達量這個可以有絕對錶達量和相對錶達量,也就是所佔的比例。基於這個簡單淳樸的認知,其實我們就可以畫出很多好玩的圖,如雷達圖。

雷達圖是以從同一點開始的軸上表示的三個或更多個定量變量的二維圖表的形式顯示多變量數據的圖形方法。

今天在逛一個單細胞免疫數據庫的時候,看到其展示了一種表示基因表達的雷達圖:

瑞士免疫細胞分析門戶網站(SPICA)是一個專門用於探索和分析免疫細胞單細胞RNA-seq數據的網絡資源。與其他單細胞數據庫不同的是,SPICA管理了高分辨率描述免疫細胞狀態的細胞類型特異性參考圖譜,並在這些圖譜的背景下分析了發表的單細胞數據集。
https://spica.unil.ch/home/about

於是,我們就想把它復現一下。

library(fmsb)
library(Seurat)
library(SeuratData)
library(tidyverse)
pbmc3k.final

An object of class Seurat 
13714 features across 2638 samples within 1 assay 
Active assay: RNA (13714 features, 2000 variable features)
 2 dimensional reductions calculated: pca, umap

經典的單細胞PBMCmarker :

classmk <-c("IL7R", "CCR7",     "IL7R", "S100A4","CD14", "LYZ","MS4A1","CD8A","FCGR3A", "MS4A7",    "GNLY",
            "NKG7","FCER1A", "CST3","PPBP")

avdf <- AverageExpression(pbmc3k.final,features =classmk) #計算平均表達量

繪製雷達圖:

NCD4<- avdf$RNA[,3:4]
NCD4 <- as.data.frame(NCD4)
NCD4$M <- max(NCD4)
NCD4$N <- min(NCD4)

NCD4<- NCD4[,c(3,4,1,2)]
head(NCD4)
NCD4 <- t(NCD4)
colors_border=c( rgb(0.2,0.5,0.5,0.9), rgb(0.8,0.2,0.5,0.9) , rgb(0.7,0.5,0.1,0.9) )
colors_in=c( rgb(0.2,0.5,0.5,0.4), rgb(0.8,0.2,0.5,0.4) , rgb(0.7,0.5,0.1,0.4) )

radarchart(as.data.frame(NCD4),axistype = 1, pcol=colors_border , pfcol=colors_in )
legend(x=.6, y=1.3, legend = rownames(NCD4[-c(1,2),]), bty = "n",
       pch=20 , col=colors_in , text.col = "grey", cex=1.2, pt.cex=3)

一個多細胞類型多marker的雷達圖就繪製成功了,那麼,作爲一個多變量的可視化工具,在單細胞的數據分析中,哪些步驟還可以用到雷達圖呢?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章