Python 全息视图中的热图?

Python 全息视图中的热图?,python,heatmap,holoviews,Python,Heatmap,Holoviews,我想用全息图绘制一张热图。我做了几次尝试,但都没有成功。 我绘制的数据有两个值(一个在“x”轴上,一个在“y”轴上),我希望每种颜色都代表数量(如热图中的直方图)。在HoloViews中,热图实际上是用于分类数据的。如果您的数据是数字数据,您确实希望计算2D直方图并使用hv.Image元素,您可以使用np.historogram2d进行此操作,例如: a, b = np.random.randn(1000, 2).T df = pd.DataFrame({'a': a*10, 'b': b},

我想用全息图绘制一张热图。我做了几次尝试,但都没有成功。
我绘制的数据有两个值(一个在“x”轴上,一个在“y”轴上),我希望每种颜色都代表数量(如热图中的直方图)。

在HoloViews中,热图实际上是用于分类数据的。如果您的数据是数字数据,您确实希望计算2D直方图并使用hv.Image元素,您可以使用np.historogram2d进行此操作,例如:

a, b = np.random.randn(1000, 2).T
df = pd.DataFrame({'a': a*10, 'b': b}, columns=['a', 'b'])
z, a, b = np.histogram2d(df['a'], df['b'])
hv.Image((a, b, z), ['a', 'b'], 'Count')

或者,如果您有大量数据,您可以使用内置的datashader支持执行相同的操作:

from holoviews.operation.datashader import rasterize

a, b = np.random.randn(1000, 2).T
df = pd.DataFrame({'a': a*10, 'b': b}, columns=['a', 'b'])
rasterize(hv.Scatter(df), width=10, height=10, dynamic=False)

根据需要调整宽度和高度,或者删除dynamic=False,以便在缩放时动态重新采样。

请详细说明数据的外观。很遗憾,我这里没有代码。但问题是我有一个数据框,比如我想用数据['a']和数据['b']创建一个热图,我想让第三个分量代表数据的数量,其中数据['a']和数据['b']具有某个值。你可以在问题的a、b和c列中放一个数据示例吗?这实际上取决于数据的外观。a列和b列是分类数据还是数字数据?只是数字数据!它们类似于空间2D中的坐标,因此您应该设计一个坐标系为x轴,另一个坐标系为y轴。第三个组件表示我在每个点中有多少数据