美文网首页生信绘图
生信绘图小技巧 | 多组小提琴柱状组合图绘制

生信绘图小技巧 | 多组小提琴柱状组合图绘制

作者: 小杜的生信筆記 | 来源:发表于2023-03-06 12:05 被阅读0次

昨天,我们分享了跟着NC学作图 | 差异比较小提琴+柱状组合图的教程。这是单个图形的教程,如果是多个类似的图形,我们需要绘制呢?

对于这个问题,我们很多同学首先想到的就是“拼图”,这也是我的首先想到的。

使用plot_grid()函数进行拼图

拼图的方式很多,我一直都是使用plot_grid()进行拼图,我个人认为这是很简单的方法。

plot_grid()操作

### 数据

head(df)
CCLE_ID all_pseudotime emt_score target_tissue CI.05 CI.95
1 22RV1_PROSTATE 49.27840 -1.104890 brain -3.824015 -2.976779
2 22RV1_PROSTATE 49.27840 -1.104890 lung -3.824015 -2.721612
3 22RV1_PROSTATE 49.27840 -1.104890 bone -3.824015 -2.503531
4 22RV1_PROSTATE 49.27840 -1.104890 liver -3.285850 -2.146388
5 22RV1_PROSTATE 49.27840 -1.104890 kidney -3.824015 -3.141363
6 2313287_STOMACH 45.07075 -1.792617 kidney -4.034838 -4.034838
mean penetrance status_metpot
1 -3.220084 0.14285714 weakly_metastatic
2 -3.135029 0.07142857 weakly_metastatic
3 -2.940992 0.07142857 weakly_metastatic
4 -2.438389 0.21428571 weakly_metastatic
5 -3.467631 0.07142857 weakly_metastatic
6 -4.034838 0.00000000 non_metastatic

## 绘制图形
p1
p2
p3
..............

## 拼图 
plot_grid(p1,p2,p3,
          p4,p5,p6,
          p7,p8,p9,
          p10,p11,p12,
          ncol = 3, nrow = 4, labels = "AUTO", align = "hv", label_size = 16)

具体参数:

  • ncolnrow:行与列的数量
  • labels = “AUTO” `:自动标注A、B、C等,也可以自己设定
  • label_size:labels的大小
  • align:Specifies whether graphs in the grid should be horizontally ("h") or vertically ("v") aligned. Options are "none" (default), "hv" (align in both directions), "h", and "v"
    .....
    具体参数可以看plot_grid()文档。

同类型的图,你需要话很多遍,或者直接写个for循环也可以的。


偷懒的操作要如何做呢?

使用facet_wrap()函数即可,具体操作请看下面的。
直接使用前面的数据和代码绘制[跟着NC学作图 | 差异比较小提琴+柱状组合图]

多个图形

添加facet_wrap(~target_tissue)即可。因此,在数据中需要有target_tissue的分类信息。

ggviolin(df, "status_metpot", "emt_score", fill = "status_metpot",
             palette = c("#00AFBB", "#E7B800", "#FC4E07"),
             add = "boxplot", add.params = list(fill = "white"),xlab="Metastatic Potential")+ 
  stat_compare_means(comparisons = my_comparisons,method="wilcox")+ 
  geom_hline(yintercept=0, linetype="dashed", color = "red")+
  ## 添加该信息组
  facet_wrap(~target_tissue)

ENDING!!

往期文章:

1. 最全WGCNA教程(替换数据即可出全部结果与图形)

WGCNA分析 | 全流程分析代码 | 代码一

WGCNA分析 | 全流程分析代码 | 代码二

WGCNA分析 | 全流程代码分享 | 代码三

2. 精美图形绘制教程

精美图形绘制教程


小杜的生信筆記 ,主要发表或收录生物信息学的教程,以及基于R的分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!!

相关文章

  • 【无机纳米材料科研制图——OriginLab 0210】Orig

    此篇,我们来分享Origin绘制多组柱状图、立体柱状图和三维散点图。 一、多组柱状图 1)准备数据。 ...

  • 2018-04-24

    matplotlib绘图 通常我们可以绘制折线图、饼状图、柱状图,用matplotlib绘制折线图、柱状图情况较多...

  • 【R画图学习9.2】双坐标轴柱线图

    今天我们学习画柱状图的另一个技巧,如何绘制双坐标系。一般情况下包含多组数据,还这多组数据的scale或者单位又不太...

  • MPAndroid源码分析

    MPAndroid是开源的图标绘制框架。能够绘制 ,支持绘制折线图,柱状图,组合图,radar图等。 本文主要解决...

  • 高级可视化神器Plotly玩转柱状图

    可视化神器Plotly玩转柱状图 本文是可视化神器Plotly绘图的第5篇:重点讲解如何利用Plotly绘制柱状图...

  • python第八天

    一、绘图补充 1. 绘制水平柱状图 绘制饼图 二、切片 格式 左闭右开,起始和终止可以省略不写示例: 三、练习:豆...

  • R语言循环绘制柱状图

    循环绘制正常与肿瘤两组的柱状图 第一步: 合并数据及 第二步: 循环绘图 循环不同grade的柱状图

  • 可视化库Highcharts-3-绘制柱状图

    Highcharts绘制柱状图 本文介绍的是如何利用python-highcharts绘制柱状图 水平/垂直柱状图...

  • 微信小程序图表插件(wx-charts)

    微信小程序图表插件(wx-charts)基于canvas绘制,体积小巧支持图表类型饼图、线图、柱状图 、区域图等图...

  • 瑞德学习R语言day03

    factor(变量) 因子类型的转化 R语言绘图 使用ggplot2绘图导入依赖 绘制柱状图 统计一组数中元素的情...

网友评论

    本文标题:生信绘图小技巧 | 多组小提琴柱状组合图绘制

    本文链接:https://www.haomeiwen.com/subject/eajpldtx.html