手把手教你画酷炫环形图(图文详解)

作者:白墨(生信菜鸟团)
原文:https://mp.weixin.qq.com/s/mXuF-xqtFSX-m1agxa_CYg


成品预览


d580b8b0-8322-43d3-b825-c35f9d42a329.png


60bccbd0-55ba-446b-9c13-e1d9d51c3169.gif 环境需求

R 及 Rstudio 的安装配置
https://zhenglei.blog.csdn.net/article/details/102007737
RCircos 安装
options()$BioC_mirror
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
options()$BioC_mirror
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
library(BiocManager)
BiocManager::install("RCircos",ask = F,update = F)



60bccbd0-55ba-446b-9c13-e1d9d51c3169.gif 绘制圈图

载入包
rm(list=ls())
  
# 载入包
library(RCircos)



1 绘制人染色体圈图

# 绘制人染色体圈图 ------------------------------------------------------
# 导入人类染色体数据
data(UCSC.HG19.Human.CytoBandIdeogram)
  
# 设置染色体数据
cyto.info <- UCSC.HG19.Human.CytoBandIdeogram
# 设置不显示的染色体
chr.exclude <- NULL
# 设置内部环形数
tracks.inside <- 10
# 设置外部环形数
tracks.outside <- 0
  
# 导入上面四个基本参数
RCircos.Set.Core.Components(cyto.info,
    chr.exclude,tracks.inside, tracks.outside)
 
# 列出所有绘图参数
RCircos.List.Plot.Parameters()
  
# 绘制染色体图形,默认方法显示染色体名称。
RCircos.Set.Plot.Area()
RCircos.Chromosome.Ideogram.Plot()

数据格式:

13deb15f-0573-4f11-b987-226df84b34fc.png

绘制:

26734f00-9d4e-42fc-b589-f08244b67444.png

2 绘制基因

# 添加基因名称与连线 -----------------------------------------------------
  
# 加载数据集
data(RCircos.Gene.Label.Data);
  
# 设置在内环绘制
side <- "in";
# 设置在第一内环绘制
track.num <- 1;
  
# 绘图
RCircos.Gene.Connector.Plot(RCircos.Gene.Label.Data, track.num, side);
  
# 在染色体上添加基因名称
name.col <- 4;
track.num <- 2;
  
# 绘图
RCircos.Gene.Name.Plot(RCircos.Gene.Label.Data, name.col,track.num, side);


数据格式:

f2c4eaf8-7d1f-46ce-ab68-be404509e550.png

绘制:

3f045d1b-3dab-47c6-a087-82610a9e5a26.png

3 绘制热图

# 添加热图类型的环形 ---------------------------------------------------------------
# 加载数据集
data(RCircos.Heatmap.Data);
  
# 设置热图数据
data.col <- 6;
# 设置第5个环形生成
track.num <- 5;
#设置在内侧的环形生成
side <- "in";
  
# 绘图
RCircos.Heatmap.Plot(RCircos.Heatmap.Data, data.col, track.num, side);

数据格式:

b70f392b-e8e9-48cf-997e-1ec5ec17217e.png

绘制:

1b578ed4-026d-43d0-bab6-f40e5309ddb8.png

4 绘制散点图

# 添加散点图类型的环形 -------------------------------------------------------------
# 加载数据集
data(RCircos.Scatter.Data);
  
# 设置散点纵坐标
data.col <- 5;
# 设置图形在第6个环形生成
track.num <- 6;
# 设置图形在内侧环形生成
side <- "in"
# 设置数据大于1的点以红色显示,小于数据1的点以蓝色显示
by.fold <- 1;
  
# 绘图
RCircos.Scatter.Plot(RCircos.Scatter.Data, data.col,track.num, side, by.fold);

数据格式:

6f65f3c5-056c-456f-9390-668078e16e3e.png

绘制:

18980c4a-17f0-48f6-b0df-0f75e5dc91e6.png

5 绘制折线图

# 添加折线图类型的环形 ---------------------------------------------------
  
# 加载数据集
data(RCircos.Line.Data);
# 设置第5列为绘制数据
data.col <- 5;
# 设置第7环形成
track.num <- 7;
# 设置内环形成
side <- "in";
  
# 将chromosome列加入 `chr`,不然会因为数据格式不一致报错
RCircos.Line.Data$chromosome = paste0("chr",RCircos.Line.Data$chromosome)

# 绘图
RCircos.Line.Plot(RCircos.Line.Data, data.col, track.num, side);

数据格式:

22323a14-51d6-46f2-9e2f-13f8f174b765.png

绘制:

2b719582-51e7-4cff-a56b-bc421da54025.png

6 绘制直方图

# 添加直方图类型的环形 --------------------------------------------------------------------
# 加载内数据集
data(RCircos.Histogram.Data);
# 设置第4列为绘制数据
data.col <- 4;
# 设置在第7环绘制图形
track.num <- 8;
# 设置在内环绘制图形
side <- "in";
# 绘图
RCircos.Histogram.Plot(RCircos.Histogram.Data, data.col, track.num, side);

数据格式:

779ebd35-efa7-42b4-9b80-93ab23a52050.png

绘图:

91550ef2-541c-442c-af76-f0924f6ae4d1.png

7 绘制网络图

# 添加网络图类型的环形 --------------------------------------------------------------------
# 加载数据集
data(RCircos.Tile.Data);
# 设置图形在9环绘制
track.num <- 9;
# 设置图形在内环绘制
side <- "in";
# 绘图
RCircos.Tile.Plot(RCircos.Tile.Data, track.num, side);

数据格式:

b69fd256-f8a9-49cf-82cf-bae583126125.png

绘图:

36862544-926b-4ce4-a94f-5a7727da25cb.png

8 添加和弦图

# 添加一个或多个基因间的联系曲线 ----------------------------------------------------------
# 加载数据集
data(RCircos.Link.Data);
# 设置图形在11环绘制
track.num <- 11;
# 绘图
RCircos.Link.Plot(RCircos.Link.Data, track.num, TRUE);

数据格式:

3f3e6f5b-a03f-42d4-a96c-1d3aadb50736.png

绘图:

78ab4a24-eeec-437f-9623-b09fbb05814b.png

60bccbd0-55ba-446b-9c13-e1d9d51c3169.gif 导出PDF

点击 Export , 选择Save as PDF

ebf413b2-2b7f-4b1c-9180-8b7721f39c27.png

修改导出大小,最好是正方形的,保存

50308984-fa4e-40ff-9fed-e30192961bb6.png

会在根目录发现导出的圈图:

d580b8b0-8322-43d3-b825-c35f9d42a329.png


猜您喜欢 往期精选▼

1. R 语言绘制环状热图 

2. R 语言柱状图示例笔记 

3. R 语言画图中英文字体解决方案 

4. R EnhancedVolcano 绘制火山图 

5. R 包初学者指南 


12a48199-b62f-497c-8d03-58e64949c06e.png

本文分享自微信公众号 - 生信科技爱好者(bioitee)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

posted @ 2020-08-03 18:13  章鱼猫先生  阅读(279)  评论(0编辑  收藏  举报