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

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

相关文章

shell脚本批量导出redis key-value方式

《shell脚本批量导出rediskey-value方式》为避免keys全量扫描导致Redis卡顿,可先通过dump.rdb备份文件在本地恢复,再使用scan命令渐进导出key-value,通过CN... 目录1 背景2 详细步骤2.1 本地docker启动Redis2.2 shell批量导出脚本3 附录总

批量导入txt数据到的redis过程

《批量导入txt数据到的redis过程》用户通过将Redis命令逐行写入txt文件,利用管道模式运行客户端,成功执行批量删除以Product*匹配的Key操作,提高了数据清理效率... 目录批量导入txt数据到Redisjs把redis命令按一条 一行写到txt中管道命令运行redis客户端成功了批量删除k

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

Python实现批量提取BLF文件时间戳

《Python实现批量提取BLF文件时间戳》BLF(BinaryLoggingFormat)作为Vector公司推出的CAN总线数据记录格式,被广泛用于存储车辆通信数据,本文将使用Python轻松提取... 目录一、为什么需要批量处理 BLF 文件二、核心代码解析:从文件遍历到数据导出1. 环境准备与依赖库

Olingo分析和实践之EDM 辅助序列化器详解(最佳实践)

《Olingo分析和实践之EDM辅助序列化器详解(最佳实践)》EDM辅助序列化器是ApacheOlingoOData框架中无需完整EDM模型的智能序列化工具,通过运行时类型推断实现灵活数据转换,适用... 目录概念与定义什么是 EDM 辅助序列化器?核心概念设计目标核心特点1. EDM 信息可选2. 智能类

linux批量替换文件内容的实现方式

《linux批量替换文件内容的实现方式》本文总结了Linux中批量替换文件内容的几种方法,包括使用sed替换文件夹内所有文件、单个文件内容及逐行字符串,强调使用反引号和绝对路径,并分享个人经验供参考... 目录一、linux批量替换文件内容 二、替换文件内所有匹配的字符串 三、替换每一行中全部str1为st

Olingo分析和实践之OData框架核心组件初始化(关键步骤)

《Olingo分析和实践之OData框架核心组件初始化(关键步骤)》ODataSpringBootService通过初始化OData实例和服务元数据,构建框架核心能力与数据模型结构,实现序列化、URI... 目录概述第一步:OData实例创建1.1 OData.newInstance() 详细分析1.1.1