• 主页
  • 课程

    关于课程

    • 课程归档
    • 成为一名讲师
    • 讲师信息
    同等学历教学

    同等学历教学

    免费
    阅读更多
  • 特色
    • 展示
    • 关于我们
    • 问答
  • 事件
  • 个性化
  • 博客
  • 联系
  • 站点资源
    有任何问题吗?
    (00) 123 456 789
    weinfoadmin@weinformatics.cn
    注册登录
    恒诺新知
    • 主页
    • 课程

      关于课程

      • 课程归档
      • 成为一名讲师
      • 讲师信息
      同等学历教学

      同等学历教学

      免费
      阅读更多
    • 特色
      • 展示
      • 关于我们
      • 问答
    • 事件
    • 个性化
    • 博客
    • 联系
    • 站点资源

      未分类

      • 首页
      • 博客
      • 未分类
      • ComplexHeatmap 之 Heatmap Annotations 续(二)

      ComplexHeatmap 之 Heatmap Annotations 续(二)

      • 发布者 weinfoadmin
      • 分类 未分类, 老俊俊的生信笔记
      • 日期 2021年9月10日
      • 评论 0评论

      感谢老俊俊的大力支持。我们会每日跟新,欢迎您关注老俊俊的生信笔记。



      点击上方关注我们





      11、密度图注释

      与直方图注释类似, anno_density() 将分布显示为拟合曲线:

      ha = rowAnnotation(foo = anno_density(m))

      可以控制密度峰值的高度,使分布看起来像一个“joyplot”:

      ha = rowAnnotation(foo = anno_density(m, joyplot_scale = 2,
          gp = gpar(fill = "#CCCCCC80")))

      或者将分布可视化为小提琴图:

      ha = rowAnnotation(foo = anno_density(m, type = "violin",
          gp = gpar(fill = 1:10)))

      当输入变量中有太多行时,正常密度峰值的空间可能太小。在这种情况下,我们可以通过 热图 可视化分布:

      m2 = matrix(rnorm(50*10), nrow = 50)
      ha = rowAnnotation(foo = anno_density(m2, type = "heatmap", width = unit(6, "cm")))

      热图分布的配色方案由 heatmap_colors 控制:

      ha = rowAnnotation(foo = anno_density(m2, type = "heatmap", width = unit(6, "cm"),
          heatmap_colors = c("white", "orange")))

      12、Joyplot 注释

      输入数据应该是矩阵或列表。

      注意 anno_joyplot() 如果输入是矩阵,则始终应用于列。因为 joyplot 可视化了平行分布,矩阵不是必需的格式,列表已经足够了,如果你不确定如何设置为矩阵,只需将其转换为列表来使用它:

      m = matrix(rnorm(1000), nc = 10)
      lt = apply(m, 2, function(x) data.frame(density(x)[c("x", "y")]))
      ha = rowAnnotation(foo = anno_joyplot(lt, width = unit(4, "cm"),
          gp = gpar(fill = 1:10), transparency = 0.75))

      或者只显示线条( scale 参数控制曲线的相对高度):

      m = matrix(rnorm(5000), nc = 50)
      lt = apply(m, 2, function(x) data.frame(density(x)[c("x", "y")]))
      ha = rowAnnotation(foo = anno_joyplot(lt, width = unit(4, "cm"), gp = gpar(fill = NA),
          scale = 4))

      输入变量的格式很特殊。它可以是以下两个之一:

      • 一个矩阵(记住 anno_joyplot() 总是应用于矩阵的列),其中 x 坐标对应于 1:nrow(matrix) 并且矩阵中的每一列对应于游戏图中的一个分布。
      • 一个数据框列表,其中每个数据框有两列对应于 x 坐标和 y 坐标。

      13、地平线图注释

      地平线图作为注释只能添加为行注释。anno_horizon() 的输入变量格式与前一节介绍的 anno_joyplot() 相同。

      地平线图注释的默认样式为:

      lt = lapply(1:20, function(x) cumprod(1 + runif(1000, -x/100, x/100)) - 1)
      ha = rowAnnotation(foo = anno_horizon(lt))

      每个轨道中的值由 x/max(abs(x)) 归一化。

      正值和负值的颜色由 gpar() 中的 pos_fill 和 neg_fill 控制:

      ha = rowAnnotation(foo = anno_horizon(lt,
          gp = gpar(pos_fill = "orange", neg_fill = "darkgreen")))

      pos_fill 和 neg_fill 可以指定为向量:

      ha = rowAnnotation(foo = anno_horizon(lt,
          gp = gpar(pos_fill = rep(c("orange", "red"), each = 10),
                    neg_fill = rep(c("darkgreen", "blue"), each = 10))))

      负值的峰值是从底部还是从顶部开始:

      ha = rowAnnotation(foo = anno_horizon(lt, negative_from_top = TRUE))

      每两个相邻图表之间的间隔:

      ha = rowAnnotation(foo = anno_horizon(lt, gap = unit(1, "mm")))

      14、文本注释

      anno_text() 可以将文本用作注释。图形参数由 gp 控制:

      ha = rowAnnotation(foo = anno_text(month.name, gp = gpar(fontsize = 1:12+4)))

      位置 由 location 和 just 控制。旋转由 rot 控制:

      ha = rowAnnotation(foo = anno_text(month.name, location = 1, rot = 30,
          just = "right", gp = gpar(fontsize = 1:12+4)))
      ha = rowAnnotation(foo = anno_text(month.name, location = 0.5, just = "center"))

      location 和 just 根据放置到热图中的注释的位置自动计算(例如,如果文本是热图的右注释,则文本向左对齐,如果它是左注释则向右对齐)。

      width/height 是根据所有文本自动计算的。通常你不需要手动设置它的宽度/高度。

      背景颜色可以由 gp 设置。这里 fill 控制填充的背景颜色,col 控制文本的颜色,非标准 border 控制背景边框颜色。

      可以将宽度设置为最长文本宽度的 1.2 倍;

      ha = rowAnnotation(foo = anno_text(month.name, location = 0.5, just = "center",
          gp = gpar(fill = rep(2:4, each = 4), col = "white", border = "black"),
          width = max_text_width(month.name)*1.2))

      可以通过与 gridtext 包集成来绘制更复杂的文本。一个简单的例子如下:

      text = sapply(LETTERS[1:10], function(x) {
          qq("<span style='color:red'>**@{x}**<sub>@{x}</sub></span>_@{x}_<sup>@{x}</sup>")
      })
      ha = rowAnnotation(
          foo = anno_text(gt_render(text, align_widths = TRUE,
                              r = unit(2, "pt"),
                              padding = unit(c(2, 2, 2, 2), "pt")),
                          gp = gpar(box_col = "blue", box_lwd = 2),
                          just = "right",
                          location = unit(1, "npc")
          ))

      与其他注释不同,默认情况下文本注释没有 注释标题。可以通过在 anno_text() 中设置 show_name = TRUE 来添加标题:

      m = matrix(rnorm(100), 10)
      Heatmap(m) + rowAnnotation(month = anno_text(month.name[1:10], just = "center",
              location = unit(0.5, "npc"), show_name = TRUE),
          annotation_name_rot = 0)


      未完待续。


      收官!


      代码 我上传到 QQ 群 老俊俊生信交流群 文件夹里。欢迎加入。加我微信我也拉你进 微信群聊 老俊俊生信交流群 哦。

      群二维码:


      老俊俊微信:




      知识星球:



      所以今天你学习了吗?

      欢迎小伙伴留言评论!

      点击我留言!

      今天的分享就到这里了,敬请期待下一篇!

      最后欢迎大家分享转发,您的点赞是对我的鼓励和肯定!

      如果觉得对您帮助很大,赏杯快乐水喝喝吧!

      推 荐 阅 读




      • circlize 之可视化基因组数据

      • circlize 之 Advanced layout

      • circlize 之 circos.heatmap()

      • circlize 之 Implement high-level circular plots

      • 怎么批量合并 data.frame ?

      • QPCRpro 正式上线!

      • circlize 之 Legends

      • QPCR数据添加 p 值和显著性一次解决!

      • circlize 之 Graphics

      • circlize 之 Introduction

      • circlize 之 Circular layout

      • 鉴定差异翻译效率基因之 deltaTE 下篇

      • 鉴定差异翻译效率基因之 deltaTE 上篇

      • 鉴定差异翻译效率基因之 Riborex

      • purrr 包之 list 处理系列函数

      • purrr 包之 map 系列函数

      • 批量绘制单基因相关性图

      • Y 叔出品:ggfun

      • 神器之 computeMatrix + 绘图

      • Deeptools 神器之 bamCoverage

      • 在线版shiny pheatmap!

      • QPCR数据快速分析和绘图 — by shiny

      • RNA-seq:Salmon 快速定量

      • RNA-seq:Salmon 定量结果差异分析

      • 用R提取代表转录本

      • 画个CNS级别火山图!

      • R Tips :split 函数

      • 什么? R 版 Hisat2

      • R Tips :match 函数

      • conda 安装软件报错

      • MetaProfile on Transcript

      • 提取代表转录本之 gencode

      • 附近含有 m6A 修饰的 Stop Codon 序列提取

      • Introduction of m6A

      • RNA-seq : Hisat2+Stringtie+DESeq2

      • shiny VennDiagram

      • shiny CountToTPM/FPKM

      • 自己模仿画个– m6A distribution on transcript

      • 怎么把 shiny App 做成 exe 文件进行分发

      • shiny-server内网穿透

      • 在线版shiny pheatmap!

      • 用shiny创作在线火山图绘制App

      • circlize 之 Create plotting regions

      • circlize 之 High-level genomic functions

      • R 爬虫之爬取文献信息

      • R 爬虫之爬取公众号图片

      • 跟着 cell 绘制条形堆叠图和分面小提琴图

      • R 爬虫之爬取 NCBI 文献

      • ggplot 分面绘图一网打尽

      • circlize 之 chordDiagram 函数

      • circlize 之 chordDiagram 函数高级用法

      • R 绘制柱形偏差图

      • R 爬虫之爬取文献影响因子

      • R爬虫之 html 简介

      • R 爬虫之爬取 CRAN 官网 R 包信息

      • ZhouLab 星球

      • R爬虫之 html 简介(续)

      • 绘制带连线的柱状堆积图

      • 连线柱状堆积图进阶

      • circlize 绘图小问题解答

      • 批量读取文件一文搞定

      • 保姆级:手把手教你绘制环形基因表达热图

      • 环形热图进阶

      • 奇怪的图例作业

      • 基础绘图 grid 包,你值得学习!

      • igraph 牛刀小试

      • ggraph 绘制基因关系网络图

      • 新的 m6A 识别蛋白 MOV10

      • 听说你还不会 plot 函数?

      • 你的 legend 还是画的很丑?

      • 你有一份作业未领取

      • 你要的 ComplexHeatmap TA 来了!

      • ComplexHeatmap 之 A Single Heatmap 续(一)

      • ComplexHeatmap 之 A Single Heatmap 续(二)

      • ComplexHeatmap 之 Heatmap Annotations

      • ComplexHeatmap 之 Heatmap Annotations 续(一)

      请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!

      • 分享:
      作者头像
      weinfoadmin

      上一篇文章

      ComplexHeatmap 之 Heatmap Annotations 续(三)
      2021年9月10日

      下一篇文章

      ComplexHeatmap 之 Heatmap Annotations 续(一)
      2021年9月10日

      你可能也喜欢

      2-1675088548
      lncRNA和miRNA生信分析系列讲座免费视频课和课件资源包,干货满满
      30 1月, 2023
      9-1675131201
      如何快速批量修改 Git 提交记录中的用户信息
      26 1月, 2023
      8-1678501786
      肿瘤细胞通过改变CD8+ T细胞中的丙酮酸利用和琥珀酸信号来调控抗肿瘤免疫应答。
      7 12月, 2022

      留言 取消回复

      要发表评论,您必须先登录。

      搜索

      分类

      • R语言
      • TCGA数据挖掘
      • 单细胞RNA-seq测序
      • 在线会议直播预告与回放
      • 数据分析那些事儿分类
      • 未分类
      • 生信星球
      • 老俊俊的生信笔记

      投稿培训

      免费

      alphafold2培训

      免费

      群晖配置培训

      免费

      最新博文

      Nature | 单细胞技术揭示衰老细胞与肌肉再生
      301月2023
      lncRNA和miRNA生信分析系列讲座免费视频课和课件资源包,干货满满
      301月2023
      如何快速批量修改 Git 提交记录中的用户信息
      261月2023
      logo-eduma-the-best-lms-wordpress-theme

      (00) 123 456 789

      weinfoadmin@weinformatics.cn

      恒诺新知

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      链接

      • 课程
      • 事件
      • 展示
      • 问答

      支持

      • 文档
      • 论坛
      • 语言包
      • 发行状态

      推荐

      • iHub汉语代码托管
      • iLAB耗材管理
      • WooCommerce
      • 丁香园论坛

      weinformatics 即 恒诺新知。ICP备案号:粤ICP备19129767号

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      要成为一名讲师吗?

      加入数以千计的演讲者获得100%课时费!

      现在开始

      用你的站点账户登录

      忘记密码?

      还不是会员? 现在注册

      注册新帐户

      已经拥有注册账户? 现在登录

      close
      会员购买 你还没有登录,请先登录
      • ¥99 VIP-1个月
      • ¥199 VIP-半年
      • ¥299 VIP-1年
      在线支付 激活码

      立即支付
      支付宝
      微信支付
      请使用 支付宝 或 微信 扫码支付
      登录
      注册|忘记密码?