跟着 Cancer Discovery 学作图 | 复杂小提琴图

简介: 跟着 Cancer Discovery 学作图 | 复杂小提琴图

violinplot

本期图片

Violin plots

「Title:」Integrative pan-cancer genomic and transcriptomic analyses of refractory metastatic cancer

「Journal:」Cancer Discovery

「DOI」:10.1158/2159-8290.CD-22-0966

图片为一种泛癌分析的连续变量描述性统计可视化的形式。由三个小提琴图和一个箱线图构成。和之前画过的这图怎么画| 有点复杂的散点图类似。

复现结果

复现结果


绘图

# 示例数据建立
## 变量A
testA = matrix(runif(n = 380,0,1), 20, 19)
colnames(testA) =  paste0('cancer',LETTERS[1:19])
row.names(testA) =  paste0('sample',1:20)
## 绘制
### 数据长宽转换
library(reshape2)
datA = melt(testA,
            varnames = c('sample','cancer'),
            value.name = 'exp')
## 颜色设置
get_label_colors <- function(labels, pal="Dark2", labels_unique=NULL, alpha=1){
  if (is.null(labels_unique)){
    labels_unique <- sort(unique(labels))
  }
  palette <- RColorBrewer::brewer.pal(n=RColorBrewer::brewer.pal.info[pal, "maxcolors"], pal)
  lab2col <- list()
  i <- 1
  for (lab in labels_unique){
    lab2col[[lab]] <- grDevices::adjustcolor(palette[(i-1) %% length(palette) + 1], alpha)
    i <- i + 1
  }
  colors <- c()
  for (lab in labels){
    colors <- c(colors, lab2col[[lab]])
  }
  colors
}
colors = get_label_colors(unique(datA$cancer))
## 画图
p1 <- ggplot(datA, aes(cancer,exp,fill = cancer))+
  geom_violin() + 
  coord_flip()+
  scale_fill_manual(values = colors) +
  stat_summary(fun= mean, geom = "point",
               shape = 19, size = 2, color = "black")+
  theme_bw()+
  geom_hline(aes(yintercept=0.6), colour="#565354", linetype="dashed")+
  geom_hline(aes(yintercept=0.3), colour="#565354", linetype="dashed")+
  xlab('')+
  ylab('A indicator\nindicator A')+
  theme(panel.grid.major=element_blank(),
        panel.grid.minor=element_blank(),
        axis.text.y = element_text(size = 12,
                                   face="bold"),
        legend.title=element_blank(),
        legend.position = 'none')
p1
## 不显示y轴
remove_y <- theme(
  axis.text.y = element_blank(),
  axis.ticks.y = element_blank(),
  axis.title.y = element_blank()
)
p <- list(
  p1,
  p1 + remove_y,
  p1+ remove_y,
  p1+ remove_y
)
library(patchwork)
wrap_plots(p, nrow = 1) 
ggsave('complex_violin.pdf',width = 8,height = 6)

往期内容

  1. 资源汇总 | 2022 木舟笔记原创推文合集(附数据及代码领取方式)
  2. CNS图表复现|生信分析|R绘图 资源分享&讨论群!
  3. R绘图 | 浅谈散点图及其变体的作图逻辑
  4. 这图怎么画| 有点复杂的散点图
  5. 这图怎么画 | 相关分析棒棒糖图
  6. 组学生信| Front Immunol |基于血清蛋白质组早期诊断标志筛选的简单套路
  7. (免费教程+代码领取)|跟着Cell学作图系列合集
  8. Q&A | 如何在论文中画出漂亮的插图?
  9. 跟着 Cell 学作图 | 桑葚图(ggalluvial)
  10. R实战 | Lasso回归模型建立及变量筛选
  11. 跟着 NC 学作图 | 互作网络图进阶(蛋白+富集通路)(Cytoscape)
  12. R实战 | 给聚类加个圈圈(ggunchull)
  13. R实战 | NGS数据时间序列分析(maSigPro)
  14. 跟着 Cell 学作图 | 韦恩图(ggVennDiagram
相关文章
|
数据挖掘
跟着 Nature 学作图 | 相关性热图(显示相关性散点图)
跟着 Nature 学作图 | 相关性热图(显示相关性散点图)
1422 0
R实战 | 对称云雨图 + 箱线图 + 配对散点 + 误差棒图 +均值连线
R实战 | 对称云雨图 + 箱线图 + 配对散点 + 误差棒图 +均值连线
2398 1
R实战 | 对称云雨图 + 箱线图 + 配对散点 + 误差棒图 +均值连线
|
数据可视化 数据挖掘 数据处理
R绘图 | 浅谈散点图及其变体的作图逻辑
R绘图 | 浅谈散点图及其变体的作图逻辑
1013 0
Element el-color-picker 颜色选择器详解
本文目录 1. 前言 2. 基本用法 3. 带默认值 4. 调整尺寸 5. 小结
3387 0
Element el-color-picker 颜色选择器详解
|
数据可视化
R语言绘图教程丨Nature论文都在用的多组比较箱线图,自动计算显著性并标注,附带误差线
R语言绘图教程丨Nature论文都在用的多组比较箱线图,自动计算显著性并标注,附带误差线
|
人工智能 自然语言处理 算法
通义智文:文档应用赋能千行百业
通义智文是阿里巴巴推出的大规模文档处理技术体系,旨在提升生产力效率。最初作为阅读工具发布,现已发展为涵盖文档解析、理解、生成等多方面的技术平台。通义智文支持超长文档处理、多模态文本解析,并在法律、教育等领域提供专业服务。其创新算法如VGT版面分析和Layout-LM多模态模型,显著提升了文档处理精度。应用场景包括PPT创作、故事绘本生成及法律文书审查等,赋能千行百业。
|
存储 人工智能 C语言
数据结构基础详解(C语言): 栈的括号匹配(实战)与栈的表达式求值&&特殊矩阵的压缩存储
本文首先介绍了栈的应用之一——括号匹配,利用栈的特性实现左右括号的匹配检测。接着详细描述了南京理工大学的一道编程题,要求判断输入字符串中的括号是否正确匹配,并给出了完整的代码示例。此外,还探讨了栈在表达式求值中的应用,包括中缀、后缀和前缀表达式的转换与计算方法。最后,文章介绍了矩阵的压缩存储技术,涵盖对称矩阵、三角矩阵及稀疏矩阵的不同压缩存储策略,提高存储效率。
1090 9
|
缓存 算法 应用服务中间件
nginx 反向代理 与缓存功能
nginx 反向代理 与缓存功能
|
JavaScript 前端开发 API

热门文章

最新文章