注释气泡图函数(更新)

news2024/11/27 4:36:59

之前我们写过一个原创可视化函数Dotplot_anno.R,nature级别图表:一个注释气泡热图函数(适用于单细胞及普通数据)。主要解决的问题是1) 单细胞基因可视化分组注释。2) Bulk RNA差异基因热图、气泡图。3) 富集分析结果气泡图展示。这个函数还是受到很多小伙伴的喜爱的。但是在实际应用过程中发现了一些问题,所以这里我们对这个函数进行一下更新,解决一些问题,之前购买过此函数的小伙伴可微信联系作者获取更新版。微信VIP群已更新!

主要更新的内容是一些之前遗留的疏忽错误,例如气泡过大的问题等等。此外小伙伴反应之后,我们也发现,之前的函数在做单细胞气泡图的时候函数没有提供修改因子顺序,因为order=T设置之后导致气泡是按照从大到小排列的。所以这里我们修改一下,让顺序排列更加灵活。

图片

为了演示,我们换一个数据,其他的内容不变,只演示单细胞的内容。我们先按照默认的做一下,order=T。

library(Seurat)library(ggplot2)library(dittoSeq)source('./Dotplot_anno.R')human_data <- readRDS("D:/KS项目/公众号文章/human_data.rds")DefaultAssay(human_data) <- "RNA"#marker基因的排序还是以细胞为一组,主要是为了后续好分组markers <- c("SPARCL1","GNG11","IFITM3","AQP1",#macrophage             "CD3D","CD3E","CD3G","CD2",#T cell             "AIF1","MS4A6A","MNDA","LYZ",#DC             "S100A8","S100A9","ANXA1","CALML3",#Neutrophil             "CPA3","SLC18A2","RGS13","IL1RL1")#Mast#默认,order = TDotplot_anno(human_data,              features = markers,              celltype_color = dittoColors(),             group = c(rep('MAC',4), rep('Tcell',4),rep('DC',4),                       rep('NEU',4), rep('MAST',4)),             color = colorRampPalette(c("navy","white","firebrick3"))(100),             order = T)

图片

可以看到,顶部分组排序是按照首字母排序的,数据不是从到大到小从左到右排列。我们可以将分组排序,让其调整顺序。需要引入的一个参数是groups。​​​​​​​

#可以看到,顶部分组排序是按照首字母排序的#数据不是从到大到小从左到右排列。我们可以将分组排序,让其调整顺序#需要引入的一个参数是groupsDotplot_anno(human_data,              features = markers,              celltype_color = dittoColors(),             group = c(rep('MAC',4), rep('Tcell',4),rep('DC',4),                       rep('NEU',4), rep('MAST',4)),             color = colorRampPalette(c("navy","white","firebrick3"))(100),             order = T,             groups = c('MAC','MAST','DC','NEU','Tcell'))

图片

假设我们对于左侧celltype的排序也要按照自己顺序调整。那么order参数选择F,用level设置自己需要的顺序,groups也是可以设置的。

#假设我们对于左侧celltype的排序也要按照自己顺寻调整#那么order参数选择F,用level设置自己需要的顺序,groups也是可以设置的Dotplot_anno(human_data,              features = markers,              celltype_color = dittoColors(),             group = c(rep('MAC',4), rep('Tcell',4),rep('DC',4),                       rep('NEU',4), rep('MAST',4)),             color = colorRampPalette(c("navy","white","firebrick3"))(100),             order = F,             groups = c('MAC','MAST','DC','NEU','Tcell'),             level = c("T cell","Neutrophil","mDC","Mast","Macrophage"))

图片

其他的功能使用没有变化,函数的使用说明见B站视频,链接:

https://www.bilibili.com/video/BV16h411g7C1/?spm_id_from=333.999.0.0&vd_source=05b5479545ba945a8f5d7b2e7160ea34

这就是更新内容了,觉得分享有用的,点个赞再走呗!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/769922.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用原生Redis命令实现分布式锁

推荐文章&#xff1a; 1、springBoot对接kafka,批量、并发、异步获取消息,并动态、批量插入库表; ​ 2、SpringBoot用线程池ThreadPoolTaskExecutor异步处理百万级数据; 3、java后端接口API性能优化技巧 4、SpringBootMyBatis流式查询,处理大规模数据,提高系统的性能和响应…

【雕爷学编程】Arduino动手做(22)——8X8 LED点阵MAX7219屏8

37款传感器与模块的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&#xff0c;这…

Failed to initialize NVML: Driver/library version mismatch (解决)

问题描述 运行nvidia-smi报错&#xff1a; Failed to initialize NVML: Driver/library version mismatch解决方法 只需一步&#xff1a;下载一个安装包&#xff0c;运行一个命令来重新安装cuda driver和cuda toolkit&#xff08;在一个包里&#xff09;。 到这里&#xff1…

JVS开源基础框架:用户管理介绍(支持同步钉钉、企微、微信等)

在企业内部系统中&#xff0c;用户管理是指对系统内的用户进行管理、授权和权限管理的过程&#xff0c;这里主要介绍用户的创建与基本信息的管理&#xff0c;权限、登录等详细介绍请参考相关章节。 用户管理界面 点击平台管理-用户管理&#xff0c;界面上展示了组织管理与组织…

磁盘分区形式MBR与GPT介绍

磁盘分区形式MBR与GPT介绍 磁盘分区形式有两种&#xff1a; 1、MBR&#xff08;主启动记录&#xff09;形式&#xff0c;它是存在于磁盘驱动器开始部分的一个特殊的启动扇区&#xff1b; 2、GPT&#xff08;GUID分区表&#xff09;形式&#xff0c;它是一种使用UEFI启动的磁盘…

网络操作系统详解

网络操作系统的概念 操作系统是计算机系统中用来管理各种软硬件资源&#xff0c;提供人机交互使用的软件。网络操作系统可实现操作系统的所有功能&#xff0c;并且能够对网络中的资源进行管理和共享。网络操作系统(Network Operation System&#xff0c;NOS)是使网络上各种计算…

ai绘画怎么弄?这份ai绘画教程你必须知道

我有一个关系非常好的女性朋友&#xff0c;她的闺蜜即将过生日&#xff0c;她想给她闺蜜准备一份特别的礼物。但是&#xff0c;她对绘画毫无天赋。因此&#xff0c;我给她推荐了几款好用的ai绘画工具&#xff0c;这些神奇的ai绘画工具能帮助她创作出栩栩如生、美丽动人的女生形…

从零开始基于go-zero的go web项目实战-01项目初始化

从零开始基于go-zero搭建go web项目实战-01项目初始化 简介 导语 Go 是 Google 开发的一种静态强类型、编译型、并发型&#xff0c;并具有垃圾回收功能的编程语言&#xff0c;go语言的特点&#xff1a; 语法简洁Go语言简单易学&#xff0c;学习曲线平缓代码风格统一执行性能…

Spring Boot进阶(56):使用 ECharts 绘制各种花哨的统计图 | 超级详细,建议收藏

1. 前言&#x1f525; 在前几期&#xff0c;我们重点学习了如何在Spring Boot中使用模板引擎Thymeleaf开发Web应用的基础。接下来&#xff0c;我们介绍一下后端开发经常会遇到的一个场景&#xff1a;可视化图表。比如如下&#xff1a; 通常啊&#xff0c;这类业务在客户端应用中…

Meta与微软联手推出开源大型语言模型Llama 2;程序员如何优雅地做副业

&#x1f989; AI新闻 &#x1f680; Meta与微软联手推出开源大型语言模型Llama 2 摘要&#xff1a;Meta和微软近期合作发布了名为Llama 2的开源大型语言模型。该模型旨在帮助开发者和组织构建生成式人工智能工具和体验。Azure客户可以更轻松、安全地在Azure平台上微调和部署…

6、Java入门教程【数组】

数组是用于存储同种类型的多个数据的容器。 一、声明 //语法 dataType[] arrayRefVar; // 首选的方法 或 dataType arrayRefVar[]; // 效果相同&#xff0c;但不是首选方法//示例 double[] myList; // 首选的方法 或 double myList[]; // 效果相同&…

7.6Java EE——Bean的生命周期

Bean在不同作用域内的生命周期 Bean的生命周期是指Bean实例被创建、初始化和销毁的过程。在Bean的两种作用域singleton和prototype中&#xff0c;Spring容器对Bean的生命周期的管理是不同的。在singleton作用域中&#xff0c;Spring容器可以管理Bean的生命周期&#xff0c;控制…

2023 年最全的 5 款免费 PDF 编辑器

这里&#xff0c;我们回顾并比较了一些最好的开源 PDF 编辑器&#xff0c;以及每个编辑器的主要功能和优缺点&#xff1a; 寻找免费的 PDF 编辑器很困难&#xff0c;特别是如果您正在寻找开源 PDF 编辑器。但您不必担心在线搜索 PDF 编辑器的研究和分析&#xff0c;因为我们已…

Apikit 自学日记:测试模板

在 APIKIT 中&#xff0c;你可以将重复的测试步骤添加到测试模板库中&#xff0c;并且在测试用例中引用测试模板来实现复用测试步骤的目的。如将用户登录、清理数据库等操作作为测试模板&#xff0c;并将该用例引入到多个测试用例中&#xff0c;减少不必要的工作。 添加测试模板…

通达信组合副图指标公式-通达信公式

A:REF((C>O),2); A1:REF((C>O),1); A2:C>O OR CO; A3:REF(O,1)<REF(C,2); A4:O<REF(C,1); A5:REF((C-O),1)<REF((C-O),2); A6:(C-O)<REF((C-O),1); A7:REF(C,2)>REF(O,7)*1.05; 节奏1:A AND A1 AND A2 AND A3 AND A4 AND A5 AND A6 AND A7; 节奏2:A AN…

FTP与HTTP: 哪种协议更适合大文件传输?

随着互联网技术的发展&#xff0c;网络传输已成为了现代社会中不可或缺的一部分。无论是文本、图像、音频、视频等各种类型的数据&#xff0c;相应的传输协议也在不断地发展和更新。FTP&#xff08;File Transfer Protocol&#xff09;和HTTP&#xff08;Hyper Text Transfer P…

手写IOC

IOC原理(手写IOC) Spring框架的IOC是基于反射机制实现的。 反射回顾 Java反射机制是在运行状态中&#xff0c;对于任意一个类&#xff0c;都能够知道这个类的所有属性和方法&#xff0c;对于任意一个对象&#xff0c;都能够调用它的任意方法和属性&#xff1b;这种动态获取信息…

开放式蓝牙耳机推荐哪款?开放式蓝牙耳机排行榜推荐

​说到开放式耳机&#xff0c;想必很多人听着还是陌生&#xff0c;普通耳机久戴&#xff0c;会出现耳朵疼痛问题&#xff0c;而开放式蓝牙耳机没有&#xff0c;不入耳的设计更加的干净&#xff0c;不会对耳道造成的伤害&#xff0c;下面我给大家推荐几款很不错的开放式耳机&…

C++学习——类和对象(二)

紧接着我们上一部分类和对象的讲解之后&#xff0c;我们再来学习一下类当中的几大特点&#xff0c;以及使用方法。 一&#xff1a;实例化对象赋初值 首先我们需要学习的就是该如何为我们实例化出的对象赋初值。 1.外部赋值 对于对象赋初值我们有很多的形式&#xff0c;我们甚至…

【lesson1】Linux发展史

文章目录 推动技术进步的基本模式为什么科技一直在进步&#xff1f;科技进步动力是什么&#xff1f; 理解操作系统的发展计算机的发明操作系统的发展Linux的发展 开源为什么有人愿意参加开源项目呢&#xff1f;开源的好处 Linux的应用为什么Windows更好用&#xff1f;OS(操作系…