生信常用分析图形绘制01 -- 各种类型的热图!你学会了吗?

封面

有了R语言的基础,以及ggplot2绘图基础,我们的生信常用分析图形的绘制就可以提上日程了!本系列,师兄就开始带着大家一起学习如何用R语言绘制我们自己的各种分析图吧!

由于本系列的所有分析代码均为师兄细心整理和详细注释而成的!欢迎点赞、收藏、转发!

您的支持是我持续更新的最大动力!

示例数据和代码获取

  • 各种类型的热图你学会了吗?
    • 普通热图
    • 环形热图
  • 解锁火山图真谛!
    • plot函数就能画火山图?
    • 高级函数绘制火山图–ggplot2、ggpurb
  • 经典富集分析及气泡图、柱状图绘制
    • 气泡图绘制
    • 柱状图绘制
  • 富集分析圈图
  • 富集分析弦图
  • 绘制一张可以打动审稿人的桑基图
  • 生存分析 – KM曲线图
  • 基础PCA图
  • 云雨图
  • 韦恩图
  • 环形互作网络图
  • 相互作用网络图
  • 聚类树美化
  • 富集分析气泡图进阶版
  • mantel test相关性图
  • 词云图
  • 瀑布图
  • 森林图
  • 曼哈顿图
  • 哑铃图
  • 三线表
  • 嵌套圈图
  • 列线图
  • 蜂群图
  • 箱线图+贝塞尔曲线
  • 矩阵散点图
  • 等等,想到再继续补充!!!

本期热图结果展示

本小节共包括两种常用热图的代码,最终图形效果如下!有需要的可以支持一下哦!

普通热图
image-20210916223939661
环形热图
image-20210916223939661
普通热图
rm(list = ls())
library(pheatmap)

data <- as.matrix(read.table("data.txt",row.names = 1,header = T,sep = "\t"))

# 构建列注释信息
annotation_col = data.frame(CellType = factor(c("A","B","C","D","E",
                                                "F","G","H","I","J"))
                            #Sex = factor(rep(c("F","M"),5))
                            )

rownames(annotation_col) <- colnames(data)
head(annotation_col)

# 构建行注释信息
annotation_row = data.frame(
  GeneClass = factor(rep(c("Path1", "Path2", "Path3"), c(6, 6, 6)))
)
rownames(annotation_row) = rownames(data)
head(annotation_row)


# 自定注释信息的颜色列表
ann_colors = list(
  # Sex = c(F = "red", M = "#016D06"),
  CellType = c(A = "#65B99F", B = "#F08961", C = "#8A9BC3", D = "#DA85B5", E = "#A1CC56",
               F = "#F5D239", G = "#7CC07B", H = "#BAABD0", I = "#3766A4", J = "#DF3078")
  # GeneClass = c(Path1 = "#7570B3", Path2 = "#E7298A", Path3 = "#66A61E")
)
head(ann_colors)

pheatmap(data,
         # 去掉聚类树:
         cluster_cols = FALSE,
         cluster_rows = FALSE,
         # 加color bar:列注释信息;
         annotation_col = annotation_col,
         # 行注释信息:
         # annotation_row = annotation_row,
         # color bar 颜色设定:
         annotation_colors = ann_colors,
         # 设置单元格颜色渐变;(100)表示分100段渐变;
         color = colorRampPalette(c("#FDEBEA","#D5281F"))(100), 
         # 行、列标签的字体大小
         fontsize_col = 8,
         fontsize_row = 10,
         # 是否显示行、列名
         show_colnames = F,
         # 设置每个单元格的宽度和高度
         cellwidth = 30, 
         cellheight = 24,
         # 行、列聚类树的高度:
         # treeheight_row = 50, 
         # treeheight_col = 30,
         # display_numbers = TRUE参数设定在每个热图格子中显示相应的数值,
         # number_color参数设置数值字体的颜色
         display_numbers = TRUE,number_color = "black",
         # 设置标题:
         main = "Heatmap")
image-20210916223939661
环形热图
rm(list = ls())
library(ggtree)

data <- as.matrix(read.table("data.txt",row.names = 1,header = T,sep = "\t"))

df <- hclust(dist(data))

p1 <- ggtree(df)

gheatmap(p1,data)

p2 <- ggtree(df,layout = "circular")
p2

# 设置开口方向:rotate_tree()
p3 <- rotate_tree(p2,100)

gheatmap(p3 + geom_tiplab(offset = 13),data,
         # 设置热图的宽度:
         width = 1.5,
         # 设置单元格的颜色:
         low = "#FDEBEA",
         high = "#D5281F",
         font.size = 3,
         colnames_position = "top",
         # 调整开口大小
         colnames_offset_y = 1,
         # 调节列名和顶部之间的距离:
         hjust = 0
         ) + 
  theme(legend.position = "right")

# 后续工作可以在Ai中调整;
image-20210916223939661

往期优秀图形目录

渐变火山图

气泡图+相关性热图

复杂提琴图

复杂热图

复杂散点图

复杂热图02

甘特图

百分比柱状图

箱线图美化

弦图

mantel test图

瀑布图

曼哈顿图

KEGG富集图

哑铃图

以上内容仅为群内部分内容,不代表全部。详细目录请看下方列表!已经入群的小伙伴,无需付费购买推文,群内都会及时更新!

示例数据和代码获取

  • 2
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值