单细胞数据marker基因小提琴图绘制
liuian 2024-12-15 15:25 41 浏览
尔云间 一个专门做科研的团队
原创 小果 生信果
欢迎点赞+收藏+关注[给你小心心]
今天小果想通过单细胞数据marker基因表达量数据来绘制分面小提琴图,通过小提琴图来展示marker基因在不同细胞群中的分布情况,并做了显著性分析,话不多说开始今天的分享。
代码如下:
01安装需要的R包
install.packages(“ggplot2”)
install.packages(“ggsci”)
install.packages(“ggpubr”)
install.packages(“rstatix”)
install.packafes(“tidyverse”)
02载入需要的R包
library(ggplot2)
library(ggsci)
library(ggpubr)
library(rstatix)
library(tidyverse)
03示例数据
df <- read.csv("scviolin.csv", header = T)
# 按自己的要求排序,该顺序对应图中的顺序
df$aging <- factor(df$aging, levels = c("Y", "O"))
df$cluster_short <- factor(df$cluster_short, levels = c("OO","GC", "SC", "SMC", "EC", "NKT", "M"))
df$gene <- factor(df$gene, levels = c("DDX4", "AMH", "COL1A2", "ACTG2", "CDH5", "KLRB1", "CD163"))
04绘图代码
#显著性分析
stat.test <- df %>%
group_by(cluster_short, gene) %>%
t_test(expression ~ aging) %>%
adjust_pvalue(method = "bonferroni") %>%
add_significance()
stat.test <- stat.test %>% add_xy_position(x = "aging")
#开始绘图
p1 <- ggviolin(df, x = "aging", y = "expression",
fill = "aging",
facet = c("gene","cluster_short")) + #分面
scale_fill_npg() +
xlab("") +
ylab("Expression") +
theme(panel.grid = element_blank(),
strip.text.y = element_text(angle = 0),
strip.background.x = element_rect(fill = "grey95"), # 顶部填充浅灰色
strip.background.y = element_blank())
p1 +
stat_pvalue_manual(stat.test,
bracket.nudge.y = 1,
hide.ns = TRUE, #不显示不显著的
label = "{p.adj}{p.adj.signif}", # pvalue和星标
label.size = 3, # pvalue字的大小
vjust = -0.5) + # pvalue的上(负)下位置
scale_y_continuous(expand = expansion(mult = c(0, 0.1))) #给pvalue文字留足空间
ggsave("scViolin.pdf", width = 9, height = 9)
小果最终绘制出了这张漂亮的小提琴图,看起来效果还不错奥,在这里安利一下奥,我们的服务器已经安装好相关单细胞数据分析的R包和软件,有需要的可以联系小果
本期的分享就到这里下期再见奥。
往期代码:
【1】lncRNA的拷贝数变异下游相关分析
【2】R可视化:ggstatsplot包—科研界的美图秀秀
【3】随机森林算法用于分类预测和筛选诊断标志物
【4】基于本地Java版GSEA的输出结果整合多个通路到一张图
【5】基于岭回归模型和基因表达矩阵估算样本对药物反应的敏感性
【6】基于R包NMF对样本进行分型分析
【7】DALEX包用于探索、解释和评估模型;分析不同特征变量对响应变量的影响
【8】根据肿瘤突变负荷TMB进行KM生存分析寻找最佳的cutoff
【9】基于单样本富集分析算法评估组织中的免疫细胞浸润水平
【10】代码分享│什么?你还在用散点图来可视化数据之间的相关性
【11】代码分享│诊断列线图、校准曲线、决策曲线和临床影响曲线的构建
【12】代码分享│你了解基因的动态变化模式吗
【13】代码分享│生物信息分析之SCI热门图表-复杂热图
【14】代码分享│生物信息分析之SCI热门图表-火山图
【15】代码分享│生物信息分析之SCI热门图表-箱型图和小提琴图
【16】代码分享│深度学习-人工神经网络(ANN)的构建
【17】代码分享│R可视化:高分文章绘图之基于RCircos包的多类型圈图绘制
【18】代码分享│R可视化:基因与功能之间的关系--GO功能富集网络图绘制
【19】代码分享│生物信息分析之SCI热门图表—KM曲线和tROC曲线
【20】代码分享│R可视化:肿瘤预后模型之Cox回归分析后用R语言绘制森林图
【21】代码分享│生物信息分析之SCI热门图表—相关性热图和散点图
【22】代码分享│生信分析之R语言分析相关性及可视化的N种风格
【23】代码分享│TCGA数据获取有困难,不会预处理,学习起来
【24】代码分享│机器学习-支持向量机递归特征消除(SVM-RFE)的构建
【25】代码分享│R可视化:对两个矩阵进行相关性可视化分析
【26】GEO数据库多数据集差异分析整合利器RRA,再也不用纠结去除批次效应
【27】你与生信大佬的距离,只差2分钟搞定预后模型构建和性能评估
【28】9+SCI纯生信,模型构建中的“流量明星”,你不得不知的LASSO
【29】手把手教你画美观大气的lasso回归模型图,为你的SCI增砖添瓦
【30】R可视化:clusterProfiler包做组间比较GO富集图
【31】代码分享|R可视化:复杂热图绘制技巧之热图中添加柱状图
【32】代码分享——基于基因突变信息分析肿瘤突变负荷
【33】代码分享│富集不到想要的通路?别放弃呀,试试GSEA
【34】代码分享│还在用PCA做降维聚类吗?最强降维模型tSNE--你值得拥有
【35】代码分享│GSVA:原来功能通路也能做差异分析!
【36】代码分享│Slingshot:你不知道的单细胞拟时序分析还有它
【37】基于基因功能注释信息挖掘关键作用基因
【38】基于癌症分类预测的标志物特征提取的SVM-RFE分析代码
【39】依据表型数据基于无监督聚类算法对研究群体进行分层聚类分析
【40】基于稳健排序整合算法对多数据集进行整合及可视化
【41】基于基因表达谱估算样本免疫基质评分和肿瘤纯度
【42】自动化绘制LASSO算法回归模型图
【43】用于临床诊断和临床决策影响的DCA分析
【44】基于样本预后生存信息和临床因素用于评价不同模型的一致性指数软件
【45】用于探索、解释和评估模型的DALEX残差分析软件
【46】基于细菌群落功能丰度结果进行差异功能分析及可视化
【47】基于基因差异分析结果绘制其在染色体上的分布
【48】利用逐步回归法筛选特征基因构建Cox风险模型分析
【49】基于Immune Subtype Classifier进行肿瘤免疫亚型分类
【50】不同物种之间的同源基因名称转换分析
【51】基于逐步多因素cox回归筛选预后标记基因并构建风险评分模型
【52】基于表达信息挖掘与关注基因密切相关的基因
【53】基因组学基因名称修正分析
【54】基于Spearman算法构建关联网络
【55】基于线性建模方法对代谢组和转录组数据整合分析
【56】基于lasso回归模型方法筛选特征基因
【57】基于线性建模方法对代谢组和转录组数据整合分析
【58】基于参数型经验贝叶斯算法和支持向量机(SVM)筛选疾病亚型特征基因
【59】基于LDA(线性判别分析)算法的微生物biomarker的筛选
【60】基于R包xCell计算64种免疫细胞相对含量及下游可视化
【61】基于甲基化数据评估肿瘤纯度及下游可视化
【62】基于DiffCorr包识别不同表型下的差异共表达关系对
【63】基于逆累计分布函数识别显著偏差通路
【64】基于差异基因对通路的影响挖掘关键通路
【65】基于高通量数据的样本相似性分析
需要以上代码私信小果哦
“生信果”,生信入门、R语言、生信图解读与绘制、软件操作、代码复现、生信硬核知识技能、服务器、生物信息学的教程,以及基于R的分析和可视化等原创内容,一起见证小白和大佬的成长。
相关推荐
- 软件测试/测试开发丨Pytest 自动化测试框架(五)
-
公众号搜索:TestingStudio霍格沃兹测试开发的干货都很硬核测试报告在项目中是至关重要的角色,一个好的测试报告:可以体现测试人员的工作量;开发人员可以从测试报告中了解缺陷的情况;测试经理可以...
- python爬虫实战之Headers信息校验-Cookie
-
一、什么是cookie上期我们了解了User-Agent,这期我们来看下如何利用Cookie进行用户模拟登录从而进行网站数据的爬取。首先让我们来了解下什么是Cookie:Cookie指某些网站为了辨别...
- 软件测试 | 结合Allure生成测试报告
-
简介测试报告在项目至关重要,测试人员可以在测试报告中体现自己的工作量,开发人员可以从测试报告中了解缺陷的情况,测试经理可以从测试报告中看到测试人员的执行情况及测试用例的覆盖率,项目负责人可以通过测...
- 使用FUSE挖掘文件上传漏洞(文件上传漏洞工具)
-
关于FUSEFUSE是一款功能强大的渗透测试安全工具,可以帮助广大研究人员在最短的时间内迅速寻找出目标软件系统中存在的文件上传漏洞。FUSE本质上是一个渗透测试系统,主要功能就是识别无限制可执行文件上...
- 第42天,我终于意识到,爬虫这条路,真的好艰难
-
昨天说到学爬虫的最初四行代码,第四行中的print(res.text),我没太懂。为啥最后的输出的结果,不是显示百度网页全部的源代码呢?这个世界上永远不缺好心人。评论区的大神告诉我:因为只包含静态h...
- 详解Pytest单元测试框架,轻松搞定自动化测试实战
-
pytest是目前企业里面使用最多、最流行的Python的单元测试框架,那我们今天就使用这个框架来完成一个网易163邮箱登录的自动化实战案例。下面我们先把我们案例需要的工具进行相关的介绍:01pyt...
- 干货|Python大佬手把手带你破解哔哩哔哩网滑动验证(上篇)
-
/1前言/有爬虫经验的各位小伙伴都知道,正常我们需要登录才能获取信息的网站,是比较难爬的。原因就是在于,现在各大网站为了反爬,与爬虫机制斗智斗勇,一般的都加入了图片验证码、滑动验证码之类的干扰,让...
- Python 爬虫-如何抓取需要登录的网页
-
本文是Python爬虫系列第四篇,前三篇快速入口:Python爬虫-开启数据世界的钥匙Python爬虫-HTTP协议和网页基础Python爬虫-使用requests和B...
- 使用Selenium实现微博爬虫:预登录、展开全文、翻页
-
前言想实现爬微博的自由吗?这里可以实现了!本文可以解决微博预登录、识别“展开全文”并爬取完整数据、翻页设置等问题。一、区分动态爬虫和静态爬虫1、静态网页静态网页是纯粹的HTML,没有后台数据库,不含程...
- 从零开始学Python——使用Selenium抓取动态网页数据
-
1.selenium抓取动态网页数据基础介绍1.1什么是AJAX AJAX(AsynchronouseJavaScriptAndXML:异步JavaScript和XML)通过在后台与服务器进...
- PHP自动测试框架Top 10(php单元测试工具)
-
对于很多PHP开发新手来说,测试自己编写的代码是一个非常棘手的问题。如果出现问题,他们将不知道下一步该怎么做。花费很长的时间调试PHP代码是一个非常不明智的选择,最好的方法就是在编写应用程序代码之前就...
- 10款最佳PHP自动化测试框架(php 自动化测试)
-
为什么测试如此重要?PHP开发新手往往不会测试自己编写的代码,我们中的大多数通过不断测试我们刚刚所编写浏览器窗口的新特性和功能来进行检测,但是当事情出现错误的时候我们往往不知道应该做些什么。为我们的代...
- 自动化运维:Selenium 测试(seleniumbase搭建自动化测试平台)
-
本文将以Buddy中的Selenium测试流水线示例,来看看自动化测试就是如此简单易用!Selenium是一套用于浏览器测试自动化的工具。使用Buddy专有服务,您可以直接在Buddy中运行Selen...
- Selenium自动化测试(selenium自动化测试工具)
-
Selenium是一系列基于web的自动化测试工具。它提供了一系列测试函数,用于支持Web自动化测试。这些函数非常灵活,它们能够通过多种方式定位界面元素,并可以将预期结果与系统实际表现进行比较。作为一...
- 技术分享 | Web自动化之Selenium安装
-
本文节选自霍格沃兹测试开发学社内部教材Web应用程序的验收测试常常涉及一些手工任务,例如打开一个浏览器,并执行一个测试用例中所描述的操作。但是手工执行的任务容易出现人为的错误,也比较费时间。因此,将...
- 一周热门
-
-
Python实现人事自动打卡,再也不会被批评
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
python使用fitz模块提取pdf中的图片
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- table.render (33)
- uniapp textarea (33)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)