我想生成热图非常类似于本文中的热图:
http://www.gazehawk.com/blog/experienced-users-view-reddit-differently/
这个问题的答案并不完全令人满意,因为热图是用非常幼稚的python代码生成的,这对于带有大量点的大型热图来说非常慢。
那么,有没有更快,更灵活,更容易的解决方案? 可以是任何语言,我不在乎。
我认为问题有两个步骤:为热图生成数组a [i,j],并使用密度图对其进行绘制。可以通过以下结果生成数组:(1)使用随机值对数组进行平滑处理,或者(2)使用随机值对数组进行傅立叶变换。第二种方法将使您更平滑("更细")和可控制的结果。特别是如果您根据其次数更改随机谐波的幅度。
这两个步骤都可以在MathGL中完成-免费(GPL和部分LGPL)跨平台绘图库。它是用C ++编写的...因此,它足够快。
http://www.patrick-wied.at/static/heatmapjs/
https://github.com/sunng87/heatcanvas/
是的,您可以在答案中添加一些文字,而不是仅添加两个链接吗?
@static_rtti:我还没有在生产中使用过,看到了源代码和演示,这很有希望,在此sunng.info/blog/2011/06/openlayers-extension-for-heatcanvas会有战利品,
@Pa?lo Ebermann:至少与您不同,他提供了一个有用的答案。
@static_rtti:我对热图生成一无所知...如果我知道,我已经写了自己的答案。 我在这里的评论不应被视为攻击,而应是寻求更好答案的要求。 对不起,如果听起来不对。
@Pa?lo Ebermann:没问题,我认为您的时间花在回答问题上会更好:)
@static:如果您查看我的活动,您会发现我做得足够……但是为了使该网站保持高品质,它还需要做一些整理工作,例如发表评论以使其他人回答得更好。 (现在病了。)
这是一个无耻的插件,但是正是由于您提到的原因,我才编写了一个热图库。
它快速,可移植且易于从任何语言(ANSI C,没有依赖项)调用,并且灵活,可以创建自定义的颜色方案,"标记",点分辨率等。
可能唯一的缺点是它没有使用GPU(根据设计,我不得不在无头服务器上运行它),因此虽然速度相当快,但仍然比基于GPU的速度慢!
示例: