这图怎么画| 批量小提琴图+箱线图+散点+差异分析

2023-11-11 04:59

本文主要是介绍这图怎么画| 批量小提琴图+箱线图+散点+差异分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

13a73510c397ef628fdf766cfddd725c.jpeg

cover

写在前面

【这图怎么画】系列的图都来自VIP群里同学的提问。推文只是对图片的复现,不代表作者对图片展现形式的认同。欢迎同学们在群里分析有意思的图片。

本期图片

0f49c434f46aee07be664dba2bac3a08.png

「Title:」Typing characteristics of metabolism-related genes in osteoporosis

「Journal:」Front. Pharmacol.

「Doi:」https://doi.org/10.1016/j.eja.2022.126692

读图

The expression difference box plot represents the difference in expression levels of GPR31, GATM, DDB2, ARMCX1, RPS6, BTBD3, ADAMTSL4, COQ6, B3GNT2, and CD9 genes among the three isoforms.

没有什么特殊。之前画过的箱线图:

  1. 跟着 Cell 学作图 | 3.箱线图+散点+差异显著性检验

  2. 跟着Nat Commun学作图 | 1.批量箱线图+散点+差异分析

  3. 跟着Nat Commun学作图 | 4.配对箱线图+差异分析

  4. R实战 | 对称云雨图 + 箱线图 + 配对散点 + 误差棒图 +均值连线

  5. 跟着Nature学作图 | 质控箱线图

  6. 跟着 Cell 学作图 | 箱线图+散点(组间+组内差异分析)

复现结果

c1a3ac7f602d3a27e8c9920bacad9ed0.png
row1
148f2907b4ed3a47b5cae4453a85323b.png
all

示例数据和代码领取

点赞在看 本文,分享至朋友圈集赞30个保留30分钟,截图发至微信mzbj0002领取。

「木舟笔记2022年度VIP可免费领取」

注:2022马上过去了,为了方便各位读者朋友,现推出木舟笔记永久VIP,售价169¥2022VIP仅需支付差价进行升级。木舟笔记永久VIP享本号所有资源(限定课程除外),后续不再推出VIP企划。

木舟笔记2022年度VIP企划

「权益:」

  1. 「2022」年度木舟笔记所有推文示例数据及代码(「在VIP群里实时更新」)。

    91348a5ddebf27b71ee8b7449beab6af.png
    data+code
  2. 木舟笔记「科研交流群」

  3. 「半价」购买跟着Cell学作图系列合集(免费教程+代码领取)|跟着Cell学作图系列合集。

「收费:」

「99¥/人」。可添加微信:mzbj0002 转账,或直接在文末打赏。

aaa77b5e4ad047c23c400d0eaead253c.png

绘图

# loda data ana preprocess
mRNA <- read.csv("All_mRNA_FPKM.csv",header=T,row.names=1)
#log2
bar_mat <- t(log2(mRNA+1))
# group info
anno <- read.csv("sample_index.csv",header=T,row.names=1)
anno$type2 <- anno$Type
anno <- anno[rownames(bar_mat),]
bar_mat <- bar_mat[rownames(anno),]
bar_mat<- as.data.frame(bar_mat)
bar_mat$sam <- anno$Type## plot
library(RColorBrewer)
library(ggpubr)
library(ggplot2)
bar_mat$sam<-factor(bar_mat$sam,levels=c("C1","C2","C3","C4"))
# comparisons
my_comparisons <- list(c("C1", "C2"),c("C1", "C3"),c("C1", "C4"))# gene list
gc <- head( colnames(bar_mat), -1)
#开始批量绘制
plist<-list()
for (i in 1:length(gc)){bar_tmp<-bar_mat[,c(gc[i],"sam")]colnames(bar_tmp)<-c("Expression","sam")pb1<- ggplot(data = bar_tmp,aes(x = sam, y = Expression , fill = sam))+ scale_fill_manual(values = mycol[c(7,5,3,1)]) +geom_violin(alpha = 0.4, position = position_dodge(width = .75), size = 0.8, color="black") +geom_boxplot(notch = TRUE, outlier.size = -1, color="black", lwd=0.8, alpha = 0.7) +geom_point(shape = 21, size=2, position = position_jitterdodge(), color="black", alpha = 1) +theme_bw() + ylab("Log12(FPKM+1)") +xlab(gc[i]) +theme(axis.text.x = element_text(size = 12, color = "black"),axis.ticks = element_line(size=0.2, color="black"),axis.ticks.length = unit(0.2, "cm"),legend.position = "none",panel.background = element_blank(),panel.grid = element_blank(),axis.title = element_text(size = 12),axis.text = element_text(size = 12)) +stat_compare_means(method="t.test",hide.ns = F,comparisons =my_comparisons,label="p.signif")plist[[i]]<-pb1
} # cowplot
library(cowplot)
p <- plot_grid(plotlist = plist, ncol = 5)
## save
ggsave("boxplot1208.pdf",width = 14,height = 20)
69a6c50a875e1db37c76d43ce5f32268.png

往期内容

  1. CNS图表复现|生信分析|R绘图 资源分享&讨论群!

  2. 这图怎么画| 有点复杂的散点图

  3. 这图怎么画 | 相关分析棒棒糖图

  4. 组学生信| Front Immunol |基于血清蛋白质组早期诊断标志筛选的简单套路

  5. (免费教程+代码领取)|跟着Cell学作图系列合集

  6. Q&A | 如何在论文中画出漂亮的插图?

  7. 跟着 Cell 学作图 | 桑葚图(ggalluvial)

  8. R实战 | Lasso回归模型建立及变量筛选

  9. 跟着 NC 学作图 | 互作网络图进阶(蛋白+富集通路)(Cytoscape)

  10. R实战 | 给聚类加个圈圈(ggunchull)

  11. R实战 | NGS数据时间序列分析(maSigPro)

  12. 跟着 Cell 学作图 | 韦恩图(ggVennDiagram)


fa615a000fc510a34c8be6b7d74c87c8.png
木舟笔记矩阵

这篇关于这图怎么画| 批量小提琴图+箱线图+散点+差异分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/387708

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Redis中的有序集合zset从使用到原理分析

《Redis中的有序集合zset从使用到原理分析》Redis有序集合(zset)是字符串与分值的有序映射,通过跳跃表和哈希表结合实现高效有序性管理,适用于排行榜、延迟队列等场景,其时间复杂度低,内存占... 目录开篇:排行榜背后的秘密一、zset的基本使用1.1 常用命令1.2 Java客户端示例二、zse

Redis中的AOF原理及分析

《Redis中的AOF原理及分析》Redis的AOF通过记录所有写操作命令实现持久化,支持always/everysec/no三种同步策略,重写机制优化文件体积,与RDB结合可平衡数据安全与恢复效率... 目录开篇:从日记本到AOF一、AOF的基本执行流程1. 命令执行与记录2. AOF重写机制二、AOF的

MyBatis Plus大数据量查询慢原因分析及解决

《MyBatisPlus大数据量查询慢原因分析及解决》大数据量查询慢常因全表扫描、分页不当、索引缺失、内存占用高及ORM开销,优化措施包括分页查询、流式读取、SQL优化、批处理、多数据源、结果集二次... 目录大数据量查询慢的常见原因优化方案高级方案配置调优监控与诊断总结大数据量查询慢的常见原因MyBAT

分析 Java Stream 的 peek使用实践与副作用处理方案

《分析JavaStream的peek使用实践与副作用处理方案》StreamAPI的peek操作是中间操作,用于观察元素但不终止流,其副作用风险包括线程安全、顺序混乱及性能问题,合理使用场景有限... 目录一、peek 操作的本质:有状态的中间操作二、副作用的定义与风险场景1. 并行流下的线程安全问题2. 顺

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决

《MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决》MyBatis默认开启一级缓存,同一事务中循环调用查询方法时会重复使用缓存数据,导致获取的序列主键值均为1,... 目录问题原因解决办法如果是存储过程总结问题myBATis有如下代码获取序列作为主键IdMappe

MySQL批量替换数据库字符集的实用方法(附详细代码)

《MySQL批量替换数据库字符集的实用方法(附详细代码)》当需要修改数据库编码和字符集时,通常需要对其下属的所有表及表中所有字段进行修改,下面:本文主要介绍MySQL批量替换数据库字符集的实用方法... 目录前言为什么要批量修改字符集?整体脚本脚本逻辑解析1. 设置目标参数2. 生成修改表默认字符集的语句3

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建