前面在我们的空转数据分析交流群里面,有一个学员问了一个问题,他使用python在分析华大的空转数据,数据格式为h5ad,在绘制空间spot聚类图时发现切片HE背景与spot对不齐,偏了,如下图所示,现在就来看看为什么!
可以看到这确实偏的太离谱啦是不是!
示例数据
我找了一个h5ad的数据,看看能不能重现他的问题。
前面介绍过的 网上最全的空间转录组数据库大汇总
选个数据库下载一个脑的空转数据:https://db./stomics/datasets/STDS0000040/data
使用python读取进来,h5ad格式有两种读取方式,这里用scanpy读取吧:
# 导入scanpy库
import scanpy as sc
# 读取
adata = sc.read_h5ad("./Human_Glioblastoma_Whole_10xvisium_processed.h5ad")
adata
# the slot spatial in obsm, which contains the spatial information from the Visium platform
这个数据进行了预处理,降维聚类分群等都做好了,其中空间坐标图片信息保存在 adata.obsm[‘spatial’] 这里。
绘图看看
先看看umap降维聚类图:
sc.pl.umap(adata, color=["clusters"])
正常,没有什么问题。再看看空间spot图:
sc.pl.spatial(adata, color="clusters", size=1.2)

偏的很离谱!
用 squidpy 包看看:
import squidpy as sq
sq.pl.spatial_scatter(adata, color="clusters", figsize=(10, 10))
也是这样!
解决办法
经过简单的探索,我发现这两个绘图函数里面有个关键参数:sc.pl.spatial函数的 img_key 和 sc.pl.spatial 函数的 img_res_key 默认都是那个高分辨的值 hires,现在改为 lowres 就可以啦:
# scanpy包的
sc.pl.spatial(adata, img_key = "lowres", color="clusters", size=1.2)
# squidpy 包的
sq.pl.spatial_scatter(adata,img_res_key="lowres",color="clusters", figsize=(10, 10))
完美!
今天分享到这,如果上面的内容对你有帮助,欢迎一键三连~
友情转发:
-
生信入门&数据挖掘线上直播课10月班,你的生物信息学入门课 -
时隔5年,我们的生信技能树VIP学徒继续招生啦 -
满足你生信分析计算需求的低价解决方案 -
生信故事会,来看看他们的生信入门故事 -
生信马拉松答疑专辑,获取你的生信专属答疑