Python 热图(基本和复杂)

问题描述 投票:0回答:3

在 python (2.7) 中制作热图的最佳方法是什么?我找到了 heatmap.py 模块,我想知道人们是否对使用它有任何建议,或者是否有其他包可以做得很好。

我正在处理非常基本的数据,例如叠加在图像上的

xy = np.random.rand(1000,2)

虽然我还想尝试另一件事,那就是制作一个缩放为不同热图的热图。例如,我有

attempts = np.random.rand(5000,2)
successes = np.random.rand(500,2)

我想要一张相对于尝试密度的成功热图。这可能吗?

python matplotlib graphics heatmap bokeh
3个回答
1
投票

Seaborn是一个非常广泛使用的库,用于制作漂亮的绘图,并且具有热图功能。 Seaborn 在底层使用 matplotlib。

import numpy as np
import seaborn as sns

xy = np.random.rand(1000,2)
sns.heatmap(xy, yticklabels=100)

关于你的第二个问题,我不知道你的意思。但我的建议是创建一个“相对于尝试密度的成功[缩放]”的 numpy 数组或 pandas 数据框,无论你的意思是什么,然后将该缩放数组或数据框传递给

sns.heatmap


0
投票

您可以使用 python 包 PyComplexHeatmap 从数据框中绘制非常复杂的热图:https://dingwb.github.io/PyComplexHeatmap/build/html/gallery.html

此外,它还允许您将多个热图合成为一张图。


-1
投票

您可以获得的最基本的热图是图像图:

import matplotlib.pyplot as plt
import numpy as np

xy = np.random.rand(100,2)
plt.imshow(xy, aspect="auto")
plt.colorbar()

plt.show()

请注意,使用比像素更多的点来显示热图可能没有太大意义。

当然也有不同的方法来绘制热图,您可以浏览 matplotlib 示例库,看看哪个图最吸引您。

© www.soinside.com 2019 - 2024. All rights reserved.