sc.pl.umap 画feature plot

2024-01-19 07:36
文章标签 sc feature pl plot umap

本文主要是介绍sc.pl.umap 画feature plot,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天有时间尝试测试了这个scanpy的feature plot,其实很简单,就是使用
sc.pl.umap(adata,color="gene name"), 但是这个地方就有一个问题,这个画出来的值是原始的基因值还是scale之后的,这个我得搞清楚

首先看使用例子,参考博客
https://www.jianshu.com/p/9c14c23755af

import scanpy as sc
import pandas as pd
from matplotlib.pyplot import rc_context
import matplotlib.pyplot as pl
sc.set_figure_params(dpi=1000, color_map = 'viridis_r')
sc.settings.verbosity = 1
sc.logging.print_header()## 加载数据
pbmc = sc.datasets.pbmc68k_reduced()
# inspect pbmc contents
pbmc

在这里插入图片描述

# rc_context is used for the figure size, in this case 4x4
with rc_context({'figure.figsize': (4, 4)}):sc.pl.umap(pbmc, color='CD79A')

结果如下
在这里插入图片描述
其实从这个图上大致能猜出来,估计是原始的count值,
从下面的图就可以看出

在这里插入图片描述
所以猜想并没有问题,下面我还查了scanpy的api,
在这里插入图片描述
注意这个参数use_raw=None, 也就是说默认就是adata.raw

顺便验证一下

import numpy as np
import seaborn as sns
import matplotlib.pyplot as pltind = (list(pbmc.var_names =="CD79A")).index(True)
CD79A_raw_exp = pbmc.raw.X.toarray()[:,ind]
import pandas as pd 
df_umap = pd.DataFrame(pbmc.obsm["X_umap"].copy(),columns =["umap_1","umap_2"])df_umap["exp"] = CD79A_raw_exp cmap = sns.cubehelix_palette(as_cmap=True)f, ax = plt.subplots()
points = ax.scatter(df_umap["umap_1"].values, df_umap["umap_2"].values, c=df_umap["exp"].values, s=20, cmap=cmap)
f.colorbar(points)

在这里插入图片描述
这个图和直接使用sc.tl.umap图其实是一样的,嘿嘿

那么再继续画,如果我不想画原始的raw.X的值,我想画adata.X的值应该如何呢,

其实也很简单

sc.pl.umap(pbmc,use_raw=False, color='CD79A')

结果如下
在这里插入图片描述
注意这个最大值和最小值的变化
在这里插入图片描述
刚好和这个值是对应上的,嘿嘿嘿,这样就清楚了,以后feature plot应该怎么画了

这篇关于sc.pl.umap 画feature plot的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/621680

相关文章

利用PL/SQL工具如何给指定用户分配权限

选中指定的表--右键--编辑--就出现右边的内容了,选择权限,分配用户某个权限就行了;

PL/SQL工具创建Oracle数据库表,实现id字段的自动递增

通过PL/SQL工具,创建Oracle数据库表,如何实现字段ID自动递增; Oracle的自增需要依靠序列和触发器共同实现 比如:先创建一个表 create table test (id int primary key, name varchar2(10)); 创建一个序列 create sequence test_seq increment by 1 start with 1  min

利用PL/SQL工具连接Oracle数据库的时候,报错:ORA-12638: 身份证明检索失败的解决办法

找到相对应的安装目录:比如:E:\oracle\product\10.2.0\client_1\NETWORK\ADMIN 在里面找到:SQLNET.AUTHENTICATION_SERVICES= (NTS) 将其更改为:SQLNET.AUTHENTICATION_SERVICES= (BEQ,NONE) 或者注释掉:#SQLNET.AUTHENTICATION_SERVICES= (N

k8s 存储(PV、PVC、SC、本地存储、NFS)

存储持久化相关三个概念: PersistentVolume (PV) 是对具体存储资源的描述,比如NFS、Ceph、GlusterFS等,通过PV可以访问到具体的存储资源;PersistentVolumeClaim (PVC) Pod想要使用具体的存储资源需要对接到PVC,PVC里会定义好Pod希望使用存储的属性,通过PVC再去申请合适的存储资源(PV),匹配到合适的资源后PVC和PV会进行绑定

PL/SQL使用技巧

Oracle数据库相信已成为很多企业构建自身关键业务的重要后台支撑,也是众多开发人员常常采用的后台。但Oracle自己提供的一套客户端工具不是很好用,极大的影响了工作效率,幸好现在有了PL/SQL Developer这款工具。现在越来越多的开发人员成了它的忠实fans。本文就是立足于实用的基础上,总结了了改工具的常用技巧: 1.记住登陆密码 为了工作方便希望PL/SQL Devel

【机器学习 sklearn】特征筛选feature_selection

特征筛选更加侧重于寻找那些对模型的性能提升较大的少量特征。 继续沿用Titannic数据集,这次试图通过特征刷选来寻找最佳的特征组合,并且达到提高预测准确性的目标。 #coding:utf-8from __future__ import divisionimport sysreload(sys)sys.setdefaultencoding('utf-8')import timest

Oracle(PL/SQL编程基础(PL/SQL程序块与PL/SQL语句)、异常、游标、数据类型)

一、PL/SQL Procedure Language/SQL是一门编程语言,Oracle公司对SQL进行了扩展,扩展后的SQL,就叫PL/SQL,功能更强大,面向过程语言,模块化编程语言,用于开发基于数据库的应用程序。下面关于PL/SQL编程基础主要介绍两点PL/SQL程序块于PL/SQL语句。 1、PL/SQL程序块 PL/SQL程序的基本单元,按照指定的方式,进行定义的

plot()画图,横或纵坐标出现乱序

现象: import matplotlib.pyplot as plt plt.plot(x, y, ‘-’) 画折线图,出现了如下,纵坐标数据密集显示,放大之后,出现了乱序。 解决方法: 1.先查看横纵坐标的数据类型。 print(“type:”, type(y)). 我这里打印是字符串类型。 type: <class ‘str’> 2.横纵坐标数据类型需要是int ,float

feature_column相关接口

在TensorFlow中,特征列(Feature column)是原始数据和 Estimator 之间的接口,它告诉Estimator如何使用数据。 原始数据集包含各种各样的特征,有的特征是数值,比如年龄,长度、速度;有的特征是文字,比如,地址、Email内容、数据库查询语句等 神经网络接受的输入,只能是数值,而且是整理好的数值 所以,原始数据 和 神经网络输入需求之间需要一个桥梁,这个

pl/sql 连接oracle 数据库

http://note.youdao.com/noteshare?id=2f20f5b6e1ecb57bfaf66e5a36e73078&sub=A05FD0A016A2419685EF5B7FEC6BA012