一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

单细胞t-SNE图前端可视化方法、装置、设备及介质与流程

2023-02-04 14:52:39 来源:中国专利 TAG:

单细胞t-sne图前端可视化方法、装置、设备及介质
技术领域
1.本发明实施例涉及生物信息技术领域,具体涉及一种单细胞t-sne图前端可视化方法、装置、设备及介质。


背景技术:

2.伴随着混样策略的出现、细胞捕获通量的提高和国产单细胞技术的推出,单细胞转录组的实验成本在不断下降,单个项目可获取的细胞数量急剧上升,数量达到10^6级的细胞捕获数将成为未来单细胞转录组的常态。在如此大数据量下,云分析逐渐成为科研人员重要的分析手段。
3.网页端是呈现云分析结果的方便快捷的利器,tsne/umap图又是单细胞测序数据可视化中重要一员,承载着对细胞分群聚类情况的直观认知。所以,tsne/umap图的前端可视化有重要意义。
4.目前,html5是网页端实现数据交互可视化的主要平台,主要支持svg和canvas两种可视化技术。svg是可缩放矢量图,不依赖于分辨率,支持事件处理器,适合带有大型渲染区域的应用程序;canvas依赖于构建画布的分辨率,不支持事件处理器,适合许多对象需要被频繁重绘的图形密集型应用。
5.tsne/umap图中每一个点代表一个细胞,在svg中代表着数量庞大的矢量对象,在canvas中代表初始画布的极高分辨率,致使大细胞量的tsne/umap图在网页渲染过程的速度很慢。其次,大细胞量意味着需要从服务器传输到网页端的原始数据的数据量大,下载时间长,进一步延长了网页端从打开到完成图形渲染所需要的时间。最后,图形渲染其实也是调用的使用者的电脑,对电脑的配置也需要较高的要求。


技术实现要素:

6.为了克服现有技术的不足,本发明实施例的目的在于提供一种单细胞t-sne图前端可视化方法、装置、设备及介质,可以缩短网页图形渲染的时间,提高了使用者的使用体验。
7.为解决上述问题,本发明实施例第一方面公开一种单细胞t-sne图前端可视化方法,其包括以下步骤:
8.s1,接收输入文件并确定细胞点总数量,所述细胞点总数量为整张待渲染图中所有的细胞点数量,在所述细胞点总数量大于第一预设阈值时,执行步骤s2,反之,执行步骤s5;
9.s2,根据每个细胞亚群的细胞点数量以及第一预设条件对所述细胞亚群进行筛选,形成第一细胞亚群集合和第二细胞亚群集合,其中,所述第一细胞亚群集合为细胞点数量满足第一预设条件的所有细胞亚群的集合,所述第一细胞亚群集合为细胞点数量不满足第一预设条件的所有细胞亚群的集合,所述第一预设条件为细胞点数量大于第二预设阈值,或/和,细胞点数量大于所有细胞亚群的细胞点数量的中位数;
10.s3,设置基础细胞点数量,对所述第一细胞亚群集合中每个细胞亚群的细胞点进行合并;
11.s4,确定目标细胞点数量,所述目标细胞点包括第二细胞亚群集合中的所有细胞点以及第一细胞亚群集合中经过合并处理后的所有细胞点,如果所述目标细胞点数量大于第一预设阈值,则重复执行步骤s2-s3直至目标细胞点数量小于或等于第一预设阈值;
12.s5,构建目标细胞点的坐标信息,使用canvas进行图形绘制。
13.作为可选的方案,在本发明实施例的第一方面中,所述所有细胞亚群的细胞点数量的中位数,包括:
14.获取每个细胞亚群的细胞点数量;
15.根据所述亚群细胞点数量以及细胞亚群的数量确定所有细胞亚群的细胞点数量的中位数p:
[0016][0017]
其中,ci为第i个细胞亚群的细胞点数量,i为细胞亚群的序号,0≤i≤n;n为最后一个细胞亚群的序号。
[0018]
作为可选的方案,在本发明实施例的第一方面中,设置基础细胞点数量,对所述第一细胞亚群集合中每个细胞亚群的细胞点进行合并,包括:
[0019]
设置基础细胞点数量,确定第一细胞亚群集合中每个细胞亚群的拟合倍数k:
[0020][0021]
其中,kj为第一细胞亚群集合中第j个细胞亚群的拟合倍数,a为预设的基础细胞点数量,cj为第一细胞亚群集合中第j个细胞亚群的细胞点数量,为向上取整;
[0022]
对所述第一细胞亚群集合中每个细胞亚群按照对应的拟合倍数进行细胞点合并。
[0023]
作为可选的方案,在本发明实施例的第一方面中,对所述第一细胞亚群集合中每个细胞亚群按照对应的拟合倍数进行细胞点合并,包括:
[0024]
确定第一细胞亚群集合中每个细胞亚群的细胞点的坐标位置;
[0025]
将第一细胞亚群集合中每个细胞亚群的细胞点按照其在x轴上的值的大小进行排序;
[0026]
对每个细胞亚群按照对应的拟合倍数进行细胞点合并:
[0027]
[0028][0029]
其中,x
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的x轴坐标值,x
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的x轴原始坐标值,y
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的y轴坐标值,y
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的y轴原始坐标值。
[0030]
作为可选的方案,在本发明实施例的第一方面中,构建合并后的目标细胞点的坐标信息,使用canvas进行图形绘制,包括:
[0031]
确定每个目标细胞点的坐标位置信息;
[0032]
在canvas中将同一细胞亚群中所有的目标细胞点渲染为同一颜色,得到渲染图形。
[0033]
本发明实施例第二方面公开了一种单细胞t-sne图前端可视化装置,其包括:
[0034]
第一比对单元,用于接收输入文件并确定细胞点总数量,所述细胞点总数量为整张待渲染图中所有的细胞点数量,在所述细胞点总数量大于第一预设阈值时,执行第二比对单元,反之,执行渲染单元;
[0035]
第二比对单元,用于根据每个细胞亚群的细胞点数量以及第一预设条件对所述细胞亚群进行筛选,形成第一细胞亚群集合和第二细胞亚群集合,其中,所述第一细胞亚群集合为细胞点数量满足第一预设条件的所有细胞亚群的集合,所述第一细胞亚群集合为细胞点数量不满足第一预设条件的所有细胞亚群的集合,所述第一预设条件为细胞点数量大于第二预设阈值,或/和,细胞点数量大于所有细胞亚群的细胞点数量的中位数;
[0036]
合并单元,用于设置基础细胞点数量,对所述第一细胞亚群集合中每个细胞亚群的细胞点进行合并;
[0037]
迭代单元,用于确定目标细胞点数量,所述目标细胞点包括第二细胞亚群集合中的所有细胞点以及第一细胞亚群集合中经过合并处理后的所有细胞点,如果所述目标细胞点数量大于第一预设阈值,则重复执行第一比对单元和第二比对单元直至目标细胞点数量小于或等于第一预设阈值;
[0038]
渲染单元,用于构建目标细胞点的坐标信息,使用canvas进行图形绘制。
[0039]
作为可选的方案,在本发明实施例的第二方面中,所述合并单元,包括:
[0040]
设置子单元,用于设置基础细胞点数量,确定第一细胞亚群集合中每个细胞亚群的拟合倍数k:
[0041][0042]
其中,kj为第一细胞亚群集合中第j个细胞亚群的拟合倍数,a为预设的基础细胞点数量,cj为第一细胞亚群集合中第j个细胞亚群的细胞点数量,为向上取整;
[0043]
拟合子单元,用于对所述第一细胞亚群集合中每个细胞亚群按照对应的拟合倍数
进行细胞点合并。
[0044]
作为可选的方案,在本发明实施例的第二方面中,所述拟合子单元,包括:
[0045]
确定孙单元,用于确定第一细胞亚群集合中每个细胞亚群的细胞点的坐标位置;
[0046]
排序孙单元,用于将第一细胞亚群集合中每个细胞亚群的细胞点按照其在x轴上的值的大小进行排序;
[0047]
合并孙单元,用于对每个细胞亚群按照对应的拟合倍数进行细胞点合并:
[0048][0049][0050]
其中,x
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的x轴坐标值,x
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的x轴原始坐标值,y
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的y轴坐标值,y
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的y轴原始坐标值。
[0051]
本发明实施例第三方面公开一种电子设备,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行本发明实施例第一方面公开的一种单细胞t-sne图前端可视化方法。
[0052]
本发明实施例第四方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面公开的一种单细胞t-sne图前端可视化方法。
[0053]
本发明实施例第五方面公开一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本发明实施例第一方面公开的一种单细胞t-sne图前端可视化方法。
[0054]
本发明实施例第六方面公开一种应用发布平台,所述应用发布平台用于发布计算机程序产品,其中,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本发明实施例第一方面公开的一种单细胞t-sne图前端可视化方法。
[0055]
与现有技术相比,本发明实施例的有益效果在于:
[0056]
1、本发明实施例对输入数据进行了条件简化,可以保证在数据呈现上,点数量较少的细胞亚群不会消失,从而确保了稀有细胞的数据挖掘;
[0057]
2、本发明实施例在优化图形的同时保留了图形的点群分布特征,使新的图形不会影响使用者对于不同细胞亚群及其相似关系的判断;
[0058]
3、本发明实施例可以显著缩短了网页图形渲染的时间,提高了使用者的使用体验。
附图说明
[0059]
图1是本发明实施例提供的一种单细胞t-sne图前端可视化方法的流程示意图;
[0060]
图2是本发明实施例提供的一种细胞点合并方法的流程示意图;
[0061]
图3是本发明实施例提供的一种单细胞t-sne图前端可视化方法的细胞亚群的分布图;
[0062]
图4是现有单细胞t-sne图前端可视化方法的细胞亚群的分布图;
[0063]
图5为图4对应的响应和渲染速度数据;
[0064]
图6为图3对应的响应和渲染速度数据;
[0065]
图7是本发明实施例公开的一种单细胞t-sne图前端可视化装置的结构示意图;
[0066]
图8是本发明实施例公开的合并单元的结构示意图;
[0067]
图9是本发明实施例公开的一种电子设备的结构示意图。
具体实施方式
[0068]
本具体实施方式仅仅是对本发明实施例的解释,其并不是对本发明实施例的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明实施例的权利要求范围内都受到专利法的保护。
[0069]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
[0070]
本技术的说明书和权利要求书中的术语“包括”以及它的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0071]
在本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
[0072]
本发明通过对输入数据进行了条件简化,可以保证在数据呈现上,点数量较少的细胞亚群不会消失,从而确保了稀有细胞的数据挖掘,而且可以显著缩短了网页图形渲染的时间,提高了使用者的使用体验,以下结合附图进行详细描述。
[0073]
实施例一
[0074]
请参阅图1,图1是本发明实施例公开的一种单细胞t-sne图前端可视化方法的流程示意图。如图1所示,该单细胞t-sne图前端可视化方法包括以下步骤:
[0075]
s101,接收输入文件并确定细胞点总数量,所述细胞点总数量为整张待渲染图中所有的细胞点数量。
[0076]
输入文件可以是用户或者技术人员输入到网页端相应的页面中,输入文件包括每个细胞的坐标位置信息以及隶属的细胞亚群。通过该位置信息即可统计输入文件包含的所
有细胞数量,记为细胞点总数量。
[0077]
在本发明实施例中,单细胞t-sne图前端可视化是对各个细胞在相应坐标位置的渲染,示例性地,将目标位置渲染成某种颜色,即代表这个目标位置对应的细胞属于该颜色对应的细胞亚群,因此,在本发明较佳的实施例中,细胞点数量即对应相应的单细胞数量,同理,一个细胞点即对应一个单细胞。
[0078]
每个输入文件对应渲染成一整张图,因此,细胞点总数量即待渲染整张图的所有细胞点的数量,就是该输入文件中所有细胞点的数量。
[0079]
s102,判断细胞点总数量是否大于第一预设阈值,如果细胞点总数量大于第一预设阈值,则执行步骤s103,反之,则执行步骤s111。
[0080]
第一预设阈值根据需要进行设置,例如,可以根据用户可以承受的渲染时间设置,可以理解的是,待渲染的细胞点总数量越多,则渲染时间就越长。
[0081]
示例性地,第一预设阈值可以为10万,当用户向进一步缩短渲染时间时,则可以将第一预设阈值设定为8万,甚至5万等。
[0082]
s103,计算每个细胞亚群的细胞点数量。
[0083]
每个细胞亚群均包括很多个单细胞,在本发明较佳的实施例中,根据每个单细胞隶属的细胞亚群统计各个细胞亚群的单细胞数量,记为亚群细胞点数量。
[0084]
之所以统计每个细胞亚群的亚群细胞点数量,是在于对亚群细胞点数量较大的细胞亚群进行细胞点合并,而保留亚群细胞点数量较小的细胞亚群的细胞点,从而在优化图形的同时保留了图形的点群分布特征,使新的图形不会影响使用者对于不同细胞亚群及其相似关系的判断,而且也可以保证点数量较少的细胞亚群不会消失,从而确保了稀有细胞的数据挖掘。
[0085]
s104,将各个细胞亚群的亚群细胞点数量与第二预设阈值进行比对,当亚群细胞点数量大于第二预设阈值时,则执行步骤s105,反之,执行步骤s108。
[0086]
第二预设阈值同样可以根据需要进行设置,设置第二预设阈值可以认为是一个初筛的过程,在本发明较佳的实施例中,仅对亚群细胞点数量大于第二预设阈值的细胞亚群中的部分或全部进行细胞点合并。
[0087]
之所以对亚群细胞点数量大于第二预设阈值的细胞亚群中的部分进行细胞点合并,是因为还可以通过步骤s106对细胞亚群进行再筛,再筛后剩余的细胞亚群才进行细胞点合并操作。
[0088]
结合步骤s106可知,第二预设阈值要小于步骤s106中的中位数,否则,步骤s106就失去了再筛的意义。
[0089]
在其他的实施例中,步骤s104和步骤s106也可以互换,即先通过中位数进行初筛,再通过第二预设阈值进行再筛,不过这种情况下,第二预设阈值要大于中位数。
[0090]
在其他的实施例中,还可以仅执行步骤s104或者s106,即仅进行一次筛选。
[0091]
s105,将所述亚群细胞点数量大于第二预设阈值的细胞亚群组建第一一细胞亚群集合。
[0092]
s106,确定所有细胞亚群的细胞点数量的中位数,并将第一一细胞亚群集合中每个细胞亚群的亚群细胞点数量与该中位数进行比对,当亚群细胞点数量大于该中位数时,执行步骤s107,反之,执行步骤s108。
[0093]
所有细胞亚群的细胞点数量的中位数是指各个细胞亚群的细胞点数量的平均值,其计算公式为:
[0094][0095]
其中,ci为第i个细胞亚群的亚群细胞点数量,i为细胞亚群的序号,0≤i≤n;n为最后一个细胞亚群的序号,p为中位数。
[0096]
上述根据需要细胞亚群的编号进行中位数的计算,在一些其他的实施例中,如果细胞亚群的编号是从1开始计数,则上述公式变为:
[0097][0098]
在另外的实施例中,当细胞亚群的编号不连续时,也可以通过上述同时进行计算中位数,不过n指代细胞亚群的总数。
[0099]
s107,将所述第一一细胞亚群集合中亚群细胞点数量大于所述中位数的细胞亚群组建第一二细胞亚群集合。
[0100]
s108,保留细胞亚群数据。
[0101]
将保留的细胞亚群记为第二细胞亚群集合,可以理解的是,当仅执行步骤s104时,第二细胞亚群集合为亚群细胞点数量小于或等于第二预设阈值的细胞亚群,当仅执行步骤s106时,第二细胞亚群集合为亚群细胞点数量小于或等于中位数的细胞亚群,而如果同时执行步骤s104和s106,则第二细胞亚群集合为亚群细胞点数量小于或等于第二预设阈值以及小于或等于中位数的细胞亚群。
[0102]
第二细胞亚群集合中的细胞亚群的细胞点不参与合并,保留输入时的原始数据信息,包括细胞点数量、细胞点位置以及细胞点隶属细胞亚群。当然,在本发明实施例中,细胞点合并也不会改变其所在的细胞亚群。
[0103]
s109,设置基础细胞点数量,对所述第一二细胞亚群集合中每个细胞亚群的细胞点进行合并。
[0104]
可以理解的是,当仅执行步骤s104时,则对第一一细胞亚群集合中每个细胞亚群的细胞点进行合并。
[0105]
这里,将细胞点进行合并的细胞亚群统称为第一细胞亚群集合,因此,第一细胞亚群集合可以是第一一细胞亚群集合(当仅执行步骤s104时),也可以是第一二细胞亚群集合(当同时执行步骤s104和步骤s106时),当然,第一细胞亚群集合可以是第一三细胞亚群集合(第一三细胞亚群集合为亚群细胞点数量大于中位数的所有细胞亚群的集合,应用于当仅执行步骤s106时)。
[0106]
请参照图2所示,设置基础细胞点数量,对第一细胞亚群集合中每个细胞亚群的细胞点进行合并,包括:
[0107]
s1091,设置基础细胞点数量,确定第一细胞亚群集合中每个细胞亚群的拟合倍数k:
[0108][0109]
其中,kj为第一细胞亚群集合中第j个细胞亚群的拟合倍数,a为预设的基础细胞点数量,cj为第一细胞亚群集合中第j个细胞亚群的细胞点数量,为向上取整。
[0110]
例如,当某个细胞亚群的细胞点数量(亚群细胞点数量)为8000,而预设的基础细胞点数量a为6000时,则该细胞亚群的拟合倍数k为2;如果某个细胞亚群的细胞点数量(亚群细胞点数量)为5000,则对应的拟合倍数k为1。
[0111]
s1092,确定第一细胞亚群集合中每个细胞亚群的细胞点的坐标位置。
[0112]
s1093,将第一细胞亚群集合中每个细胞亚群的细胞点按照其在x轴上的值的大小进行排序;
[0113]
s1094,对每个细胞亚群按照对应的拟合倍数进行细胞点合并:
[0114][0115][0116]
其中,x
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的x轴坐标值,x
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的x轴原始坐标值,y
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的y轴坐标值,y
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的y轴原始坐标值。
[0117]
示例性地,假设第j个细胞亚群的拟合倍数为5,则按照上述排序方式,将该第j个细胞亚群的5个细胞点合并成一个点,合并的原则是将这连续的5个点的横坐标和纵坐标的平均值作为合并后的细胞点的坐标,最后,仅保留合并后的细胞点坐标即可,这些合并后的细胞点坐标构成该第j个细胞亚群的新的数据,例如,假设该第j个细胞亚群的前5个细胞点(排序后的第1-5个细胞点)的坐标(记为原始坐标值)分别为(1,1)、(1,2)、(3,6)、(4,9)、(8,2),则第j个细胞亚群合并后的第1个细胞点的横坐标(x轴坐标值)为(1 1 3 4 8)/5=3.4,其纵坐标(y轴坐标值)为(1 2 6 9 2)/5=4,然后再将排序后的第6-10个细胞点合并形成合并后的第2个细胞点,依此类推,如果最后剩余的一个或多个细胞点达不到拟合倍数,则按最后剩余的细胞点个数的实际情况进行合并,例如,如果剩余4个细胞点,则计算这4个细胞点的横坐标均值和纵坐标均值,作为第j个细胞亚群合并后的最后1个细胞点。
[0118]
s110,确定目标细胞点数量,如果所述目标细胞点数量大于第一预设阈值,则重复执行步骤s103-s109直至目标细胞点数量小于或等于第一预设阈值。
[0119]
目标细胞点包括第二细胞亚群集合中的所有细胞点以及第一细胞亚群集合中经
过合并处理后的所有细胞点。
[0120]
例如,当目标细胞点数量为12万,而第一预设阈值为10万时,则再次执行步骤s103-s109直至目标细胞点数量小于或等于第一预设阈值。
[0121]
在一些其他的实施例中,可以为重复执行步骤s103-s109的次数设定一个阈值,当达到该阈值次数时,即使目标细胞点数量仍大于第一预设阈值,也不再重复执行步骤s103-s109,而直接进入步骤s111。
[0122]
在一些其他的实施例中,如果仅执行步骤s104,还可以通过调整第二预设阈值的方式实现重复执行步骤s103-s109后目标细胞点数量的明显减少,例如,当第一次执行s104时,第二预设阈值可以设置为6000,而第二次执行步骤s104时,则第二预设阈值可以设置为5000,第三次时,第二预设阈值可以设置为4000等。
[0123]
当然,同时执行步骤s104和s106或仅执行步骤s106时,由于在前一次的合并过程中,第一细胞亚群集合中各个细胞亚群的亚群细胞点数量会减少,因此,重复执行步骤s103-s109时,中位数会随之减小,因此,这种情况下,也可以使得目标细胞点数量在较小的迭代次数下可以小于或等于第一预设阈值。
[0124]
s111,构建目标细胞点的坐标信息,使用canvas进行图形绘制。
[0125]
因为第二细胞亚群集合接的数据未进行改变,而第一细胞亚群集合合并后的数据即合并细胞点的位置信息也是确定的,因此,目标细胞点的坐标信息和每个细胞点的隶属细胞亚群均为已知信息,可通过相应的图形渲染软件实现各个细胞亚群的图形绘制。
[0126]
在canvas中将同一细胞亚群中所有的目标细胞点渲染为同一颜色,得到渲染图形。渲染时,即遍历各个目标细胞点,将每个目标细胞点的坐标位置以其隶属细胞亚群对应的颜色进行渲染即可。
[0127]
以下通过举例对本发明进行解释和说明,其并不对本发明的保护范围产生任何的限定。
[0128]
第1步,对整张图的需要渲染的点数量进行统计,共计431690个点,大于10万(第一预设阈值),进入第2步;
[0129]
第2步,计算每个细胞亚群的点数量。其中cluster 0-13点数量大于6000(第二预设阈值),进入第3步;cluster 14-27点数量均小于6000,不做处理;
[0130]
第3步,计算所有细胞亚群的点数量中位数为6278.5,cluster 0-13点数量均大于该中位数,这14个亚群进入第4步;
[0131]
第4步,以亚群点数量1万为目标计算拟合倍数k。例如cluster 0点数量为77242,则其拟合倍数k=8,cluster 13点数量为6625,则其拟合倍数k=1。在cluster 0中,对所有点按照x轴的值从小到大排序,第1-8个点x、y轴坐标取中位数拟合为一个点,第9-16个点x、y轴坐标取中位数拟合为一个点,以此类推。其他亚群(cluster 1-13)做相同处理。
[0132]
第5步,统计现有点数量(目标细胞点数量)为164051,大于10万,则重复第2步到第4步,直至最后目标细胞点数量小于10万个。
[0133]
第6步,输出计算后的点坐标值,使用canvas进行绘图。
[0134]
通过对输入文件进行条件简化绘制的图形如图3所示。从图3可以看出:原本点数量较少的细胞亚群在图中得到了保留,例如,占比仅0.3%的cluster 21,在图中依然可见清晰的呈现。
[0135]
图4为未对输入文件进行上述处理,而直接进行图形绘制得到的细胞亚群分布图,对比图3和图4可知:可见点的分布情况均保持一致,依然可以很好反应亚群的相似性特征。
[0136]
请参照图5和图6所示,其中,图5为获取图4时的响应和渲染时间,图6为获取图3时的响应和渲染时间。
[0137]
通过图5可知,未对输入文件进行上述处理的后台响应时间20.16秒,数据下载时间6.23秒,对其渲染时间进行统计(数据下载完成到图形呈现的时间)可得图形渲染时间5秒;通过图6可以看出,经过上述优化后的图形后台响应时间1.58秒,数据下载时间3秒,图形渲染时间2秒,大大缩短了响应时间和渲染时间,提升用户体验。
[0138]
实施例二
[0139]
请参阅图7,图7是本发明实施例公开的一种单细胞t-sne图前端可视化装置的结构示意图。如图7所示,该单细胞t-sne图前端可视化装置可以包括:
[0140]
第一比对单元310,用于接收输入文件并确定细胞点总数量,所述细胞点总数量为整张待渲染图中所有的细胞点数量,在所述细胞点总数量大于第一预设阈值时,执行第二比对单元,反之,执行渲染单元;
[0141]
第二比对单元320,用于根据每个细胞亚群的细胞点数量以及第一预设条件对所述细胞亚群进行筛选,形成第一细胞亚群集合和第二细胞亚群集合,其中,所述第一细胞亚群集合为细胞点数量满足第一预设条件的所有细胞亚群的集合,所述第一细胞亚群集合为细胞点数量不满足第一预设条件的所有细胞亚群的集合,所述第一预设条件为细胞点数量大于第二预设阈值,或/和,细胞点数量大于所有细胞亚群的细胞点数量的中位数;
[0142]
合并单元330,用于设置基础细胞点数量,对所述第一细胞亚群集合中每个细胞亚群的细胞点进行合并;
[0143]
迭代单元340,用于确定目标细胞点数量,所述目标细胞点包括第二细胞亚群集合中的所有细胞点以及第一细胞亚群集合中经过合并处理后的所有细胞点,如果所述目标细胞点数量大于第一预设阈值,则重复执行第一比对单元和第二比对单元直至目标细胞点数量小于或等于第一预设阈值;
[0144]
渲染单元350,用于构建目标细胞点的坐标信息,使用canvas进行图形绘制。
[0145]
优选地,请参照图8所示,所述合并单元330,可以包括:
[0146]
设置子单元331,用于设置基础细胞点数量,确定第一细胞亚群集合中每个细胞亚群的拟合倍数k:
[0147][0148]
其中,kj为第一细胞亚群集合中第j个细胞亚群的拟合倍数,a为预设的基础细胞点数量,cj为第一细胞亚群集合中第j个细胞亚群的细胞点数量,为向上取整;
[0149]
拟合子单元332,用于对所述第一细胞亚群集合中每个细胞亚群按照对应的拟合倍数进行细胞点合并。
[0150]
优选地,所述拟合子单元332,可以包括:
[0151]
确定孙单元3321,用于确定第一细胞亚群集合中每个细胞亚群的细胞点的坐标位置;
[0152]
排序孙单元3322,用于将第一细胞亚群集合中每个细胞亚群的细胞点按照其在x轴上的值的大小进行排序;
[0153]
合并孙单元3323,用于对每个细胞亚群按照对应的拟合倍数进行细胞点合并:
[0154][0155][0156]
其中,x
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的x轴坐标值,x
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的x轴原始坐标值,y
m,j
为第一细胞亚群集合中第j个细胞亚群中合并后的第m个细胞点的y轴坐标值,y
n,j
为第一细胞亚群集合中第j个细胞亚群第n个细胞点的y轴原始坐标值。
[0157]
实施例三
[0158]
请参阅图9,图9是本发明实施例公开的一种电子设备的结构示意图。如图9所示,该电子设备可以包括:
[0159]
存储有可执行程序代码的存储器410;
[0160]
与存储器410耦合的处理器420;
[0161]
其中,处理器420调用存储器410中存储的可执行程序代码,执行实施例一中的一种单细胞t-sne图前端可视化方法中的部分或全部步骤。
[0162]
本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行实施例一中的一种单细胞t-sne图前端可视化方法中的部分或全部步骤。
[0163]
本发明实施例还公开一种计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行实施例一中的一种单细胞t-sne图前端可视化方法中的部分或全部步骤。
[0164]
本发明实施例还公开一种应用发布平台,其中,应用发布平台用于发布计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行实施例一中的一种单细胞t-sne图前端可视化方法中的部分或全部步骤。
[0165]
在本发明的各种实施例中,应理解,所述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0166]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0167]
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是
各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0168]
所述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例所述方法的部分或全部步骤。
[0169]
在本发明所提供的实施例中,应理解,“与a对应的b”表示b与a相关联,根据a可以确定b。但还应理解,根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其他信息确定b。
[0170]
本领域普通技术人员可以理解所述实施例的各种方法中的部分或全部步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(read-only memory,rom)、随机存储器(random access memory,ram)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read-only memory,eprom)、一次可编程只读存储器(one-time programmable read-only memory,otprom)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
[0171]
以上对本发明实施例公开的一种单细胞t-sne图前端可视化方法、装置、电子设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献