火山图

再肝一个R包!一行代码绘制精美火山图! - 知乎 https://zhuanlan.zhihu.com/p/554098598

普通火山图

##火山图
library(ggVolcano)
data <-FindMarkers(Mac, min.pct = 0.25, logfc.threshold =0.25, only.pos = FALSE, group.by = "group",ident.1 ="TBI",ident.2="MC")
write.csv(data,"Mac_tbi_mc_diff.csv" )
# use the function -- add_regulate to add a regulate column 
# to the DEG result data. 
data <- add_regulate(data, log2FC_name = "avg_log2FC",
                     fdr_name = "p_val_adj",log2FC = 1, fdr = 0.05)

# plot
ggvolcano(data, x = "log2FoldChange", y = "padj",
          label = "row", label_number = 10, output = FALSE)
##修饰描边和颜色
p1 <- ggvolcano(data, x = "log2FoldChange", y = "padj",
          fills = c("#e94234","#b4b4d8","#269846"),
          colors = c("#e94234","#b4b4d8","#269846"),
          label = "row", label_number = 10, output = FALSE)
p2 <- ggvolcano(data, x = "log2FoldChange", y = "padj",
          label = "row", label_number = 10, output = FALSE)+
  ggsci::scale_color_aaas()+
  ggsci::scale_fill_aaas()
library(patchwork)
p1|p2
普通火山图

渐变火山图

#使用gradual_volcano函数来制作一个渐变色火山图
gradual_volcano(data, x = "log2FoldChange", y = "padj",
                label = "row", label_number = 10, output = FALSE)
#修改散点的颜色和描边
library(RColorBrewer)
# Change the fill and color manually:
p1 <- gradual_volcano(data, x = "log2FoldChange", y = "padj",
          fills = brewer.pal(5, "RdYlBu"),
          colors = brewer.pal(8, "RdYlBu"),
          label = "row", label_number = 10, output = FALSE)
p2 <- gradual_volcano(data, x = "log2FoldChange", y = "padj",
          label = "row", label_number = 10, output = FALSE)+
  ggsci::scale_color_gsea()+
  ggsci::scale_fill_gsea()
library(patchwork)
p1|p2
#如果你想调整点的大小范围,你可以使用pointSizeRange = c(min_size, max_size)。其中min_size, max_size代表散点的最小尺寸和最大尺寸。
渐变火山图

jjVolcano 一行代码绘制单细胞火山图 https://mp.weixin.qq.com/s/eCllsHcSbxVA0ohHN5kCYQ

多组火山图

library("scRNAtoolVis")
Mac <-readRDS("Mac-fenqun-15-0.4.rds")
Mac_markers <- FindAllMarkers(Mac, only.pos = FALSE,
                               min.pct = 0.25,
                               logfc.threshold = 0)
options(ggrepel.max.overlaps = Inf)
write.csv(Mac_markers,file="Mac_cluster_updown_marker.csv",quote = T,row.names = T)
# check
head(Mac_markers,3)
jjVolcano(diffData = Mac_markers)
jjVolcano(diffData = Mac_markers,
          log2FC.cutoff = 0.5,  #调整log2FC阈值 
          col.type = "adjustP", #颜色映射类型
          topGeneN = 3, #top基因数量
          aesCol = c("purple","orange"), ##修改点的颜色
          tile.col = corrplot::COL2('RdBu', 15)[4:12], #改变矩形颜色
          size  = 3.5, 
          fontface = 'italic' #字体
          )
#前面的图颜色映射为上下调类型,而 adjustP 则是映射是否矫正 P 值小于 0.01,当然 P 值阈值你自己也可以修改。
#提供基因名,标记自己的基因:
# supply own genes
mygene <- c('LTB','CD79B','CCR7','GNLY')
jjVolcano(diffData = pbmc.markers,myMarkers = mygene)
多组火山图
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容