当前位置: 首页 > news >正文

seurat的 addmodule循环画图 等同于基因的叠加图 识别细胞类型 空转与单细胞得到的marker基因联合

seurat的 addmodule循环画图 等同于基因的叠加图 识别细胞类型 空转与单细胞得到的marker基因联合

library(patchwork)
library(ggplot2)
library(ggalluvial)
library(svglite)
library(Seurat)
library(openxlsx)
library(Hmisc)
#https://www.jianshu.com/p/cef5663888ff
getwd()
path=“G:/silicosis/sicosis/silicosis_ST/overlapped_map/addmodule”
dir.create(path)
setwd(path)

load(“G:/silicosis/sicosis/silicosis_ST/yll/0214/harmony_cluster/d_all/silicosis_ST_harmony_SCT_r0.6.rds”)

marker=read.xlsx(“G:/silicosis/sicosis/silicosis_ST/overlapped_map/Rigional and cell markers.xlsx”,
sheet = “SingleCell_markers”)
head(marker)
在这里插入图片描述

library(dplyr)
#开始循环画图

cellnames=colnames(marker) ##number=length(marker[,cellname])

for (each in cellnames) {
cellname=each
mymarker=marker[,cellname] %>% na.exclude() %>% unique() %>%
capitalize() %>% list()
number=length(mymarker[[1]])
unlist(mymarker)
在这里插入图片描述#对给定的基因集合进行打分 并画图
if(1==1){d.all=AddModuleScore(d.all,
features = mymarker,
name = “mymarker”)
#结果保存在这里
colnames(d.all@meta.data)

p1=SpatialFeaturePlot(d.all, features = “mymarker1”, slot = “scale.data”,images = “image”)+ ggtitle(paste(unlist(mymarker), collapse = “|”))
p2=SpatialFeaturePlot(d.all, features = “mymarker1”, slot = “scale.data”,images = “image.1”)
p3=SpatialFeaturePlot(d.all, features = “mymarker1”, slot = “scale.data”,images = “image.2”)+ ggtitle(paste(cellname))
p4=SpatialFeaturePlot(d.all, features = “mymarker1”, slot = “scale.data”,images = “image.3”)

jpeg(paste0(cellname,“","total”,length(unlist(mymarker)),““,paste0(min(number),”-",max(number)),
paste(unlist(mymarker)[1:15],collapse = "
”),“_.jpeg”), #只取前15个
height = 12, width = 12, units = ‘in’, res=600)
p=ggpubr::ggarrange(p1,p2,p3,p4,ncol = 2,nrow =2)
print§
dev.off()}
}
在这里插入图片描述

#下面的代码是为了测试
if(1==1){#
names(d.all)

SpatialFeaturePlot(d.all, features = “mymarker1”, slot = “scale.data”)+
ggtitle(paste(unlist(mymarker), collapse = “|”))

#https://ggplot2-book.org/polishing.html?q=title#themes
SpatialFeaturePlot(d.all, features = “mymarker1”, slot = “scale.data”)+
theme(plot.title =element_text(paste(unlist(mymarker), collapse = “|”)) )

SpatialFeaturePlot(d.all, features = “mymarker1”, slot = “scale.data”)+
labs(title = paste(unlist(mymarker), collapse = “|”),
colour=“Cylinders”)

}
在这里插入图片描述

相关文章:

  • 5.4 Python 逻辑运算符
  • 矽肺的 柱状图 比例图 bar图
  • 6.1 Python 单分支结构 if语句
  • 把subset_data的子集重新放到总群allmerge中找marker基因 findallmarkers
  • 6.2 python 多分支结构if...elif...else 语句
  • 6.3 Python if语句 条件判断嵌套
  • 细胞打分 addmodule addmodule对所有细胞进行循环评分
  • 6.4 序列及range函数
  • 5_addmodule空转spatial空转打分模块inflammatory炎症评分空转炎症评分 addmodule seurat
  • 6.5 python while 循环
  • 6.6 Python for 循环
  • 批量读取文件夹下所有excel文件里的内容,放入列表 把所有不管行列名如何excel合并成一个大的excel 批量读取excel,批量合并excel
  • 6.7 continue 和 break 语句
  • 批量多个excel合并成一个大的excel
  • 7.1 python 自定义函数的创建及调用
  • Angular4 模板式表单用法以及验证
  • eclipse(luna)创建web工程
  • ESLint简单操作
  • javascript面向对象之创建对象
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • java中的hashCode
  • java中具有继承关系的类及其对象初始化顺序
  • Lucene解析 - 基本概念
  • PHP的类修饰符与访问修饰符
  • Python十分钟制作属于你自己的个性logo
  • vuex 笔记整理
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 订阅Forge Viewer所有的事件
  • 基于 Babel 的 npm 包最小化设置
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 手写双向链表LinkedList的几个常用功能
  • 线性表及其算法(java实现)
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 应用生命周期终极 DevOps 工具包
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • ​学习一下,什么是预包装食品?​
  • #100天计划# 2013年9月29日
  • #pragma once与条件编译
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (阿里云万网)-域名注册购买实名流程
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (论文阅读40-45)图像描述1
  • (一)Java算法:二分查找
  • (一)WLAN定义和基本架构转
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • (转载)hibernate缓存
  • **PHP二维数组遍历时同时赋值
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .net core 源码_ASP.NET Core之Identity源码学习
  • .net 发送邮件
  • .net 简单实现MD5
  • .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction)