热图 2500 万点渲染

Heatmap 25 millions points to render

我需要渲染一个 5000x5000 大小(2500 万个点)的热图并每 10 秒更新一次。

问题:如果我想从头开始写这个应该遵循什么方法?

如果您在分辨率为 1920 x 1080 的单个常规显示器(全高清)中显示此内容,您可能无法显示每个点。

这是因为分辨率实际上是您可以表示的像素数 - 因此,考虑到您使用的是整个屏幕,您的最大值将为 1920 像素 x 1080 像素(~2M pixels/dots)。

因此,为了表示您想要的像素数量,在单个常规显示器中您必须使用以下选项:

  • 将项目分组;
  • 添加带有滚动条的面板;
  • 减少数据集。

决定策略后,您可以使用 D3 javascript 库来绘制它。

在这里您可以找到一个很好的 post 关于对项目进行分组并使用 D3 绘制它们的策略: https://int21.io/post/50-million-points/index.html