28

是否有任何 JavaScript 库允许您使用浏览器内的图形渲染功能(如<canvas>SVG 或 SVG)创建热图?

我知道 HeatMapAPI.com,但它们的热图是在服务器端生成的。我认为在<canvas>元素时代我们不再需要它了!

如果还没有这样的东西,是否有志愿者参与创建这样的工具?

4

6 回答 6

40

<canvas>我创建了一个演示,包括带有元素和 javascript的实时热图。我还在热图示例旁边添加了记录的代码。热图生成过程基于画布元素中的阿尔法图,该图取决于用户的鼠标移动。您可以在这里查看我的演示:http: //www.patrick-wied.at/static/heatmap/

于 2010-09-11T21:01:09.643 回答
4

我在 Google Visualization API [ http://code.google.com/apis/visualization/documentation/]的帮助下创建了一个命中地图。它使用 SVG 和 VML,并且还兼容跨浏览器。希望它会有所帮助。

于 2009-08-01T09:14:13.777 回答
2

我在这里有一些 js/canvas/web worker 代码,尽管可以用它完成很多工作。它还在http://heatmapthing.heroku.com/上在线推送。您的浏览器需要为此支持网络工作者。

如果您改进它,请发送拉取请求。伪高斯平滑现在快得要命了。

于 2010-06-10T08:04:47.317 回答
2

我也试了一下,但没有做高斯平滑我自己,我让画布为我做。基本上,我为灰度中的每个点绘制径向渐变,然后为这个灰度图像着色(有关详细说明,请参阅“使用 .NET 2.0 (C#) 创建热图”,我的实现有点不同)。

结果如下所示:

使用 JavaScript 和 Canvas 的热图
(来源:bitbucket.org

Chrome/Chromium 的渲染时间还不错。我认为最耗时的部分是着色,因为我在每个像素上循环。

你可以在这里找到代码:http: //trac.openlayers.org/browser/sandbox/camptocamp/canvas/openlayers/lib/heatmap-js/heatmap.js

于 2010-07-08T09:06:57.433 回答
1

几年前我玩过热图。见http://www.urbigene.com/treemapphp/,算法来自这里:http ://www.cs.umd.edu/hcil/treemap-history/

于 2009-07-12T22:08:34.180 回答
0

Heatcanvas 看起来相当不错。它还有一个传单扩展,可以在 openstreetmaps https://github.com/sunng87/heatcanvas之上运行

它在几个点(< 200)左右运行得很好,但在数千个点上运行有点慢。我认为它也可能在平移和缩放之后更频繁地重新计算,并且我在动态更改热图(使用 javascript 将热图替换为另一个热图)时遇到了一些问题,我想我需要对它进行更多试验,或者联系作者

于 2012-11-01T21:09:06.367 回答