Python 如何使用matplotlib(45K*446)绘制大型矩阵的热图

Python 如何使用matplotlib(45K*446)绘制大型矩阵的热图,python,matplotlib,bigdata,heatmap,Python,Matplotlib,Bigdata,Heatmap,我试图绘制一个大型微阵列数据集的热图,每446列45K行。 使用matplotlib中的pcolor,我无法做到这一点,因为我的电脑很容易内存不足超过8G 我更喜欢使用python/matplotlib而不是R来表达个人意见。。 有没有办法有效地绘制热图 谢谢我通过将矩阵降采样到更小的矩阵来解决这个问题。 我决定尝试两种方法: 假设我想将一个45k行的矩阵向下采样为1k行的矩阵,我每45行取一行值 另一种方法是,将45k行的样本减少到1k行,将45k行分组到由45个相邻行组成的1k组中,并将每组

我试图绘制一个大型微阵列数据集的热图,每446列45K行。 使用matplotlib中的pcolor,我无法做到这一点,因为我的电脑很容易内存不足超过8G

我更喜欢使用python/matplotlib而不是R来表达个人意见。。 有没有办法有效地绘制热图


谢谢

我通过将矩阵降采样到更小的矩阵来解决这个问题。 我决定尝试两种方法:

假设我想将一个45k行的矩阵向下采样为1k行的矩阵,我每45行取一行值 另一种方法是,将45k行的样本减少到1k行,将45k行分组到由45个相邻行组成的1k组中,并将每组的平均值作为代表行
希望有帮助。

向下采样它在显示器上得到向下采样,不管怎样,您没有45k高的显示器或更多的RAM。我处理140k x 4k阵列,需要约25G的空间来显示和组合这两种阵列。您也可以使用imshow+在pan上只显示一小部分数据+更新。谢谢。。事实上,我认为最具可扩展性的解决方案是下采样。您能提供更多关于实用解决方案的详细信息吗?thanks@msalem我在下面补充了答案。这个问题是大约3年前提出的,因此我不能包含比我记忆中的解决方案更多的内容。我对imshow在超大电网中的应用有更好的经验。不幸的是,正如我上面所说,这个问题是大约3年前提出的,所以我不能包含比我记忆中的解决方案更多的内容。然而,我认为按照答案中的解释编写代码是非常简单的。