我在这个主题上搜索了很多,但没有找到答案。
我有自己的统计数据包,我将保存用户的geoip数据(以及一堆其他数据)。我正在使用maxmind geoip库来获取此信息。
因此,在我的后端,我将这些数据可视化为基本上有两列的文本,一列用于国家名称,另一列用于来自该国家的访问次数。
我想用这些数据生成一张地图。 类似世界地图的东西,我所访问过的国家都是突出显示的。 热量映射会很好,但不是必需的。
我真的不关心它是用php(GD图像库)还是jquery生成的,因为我已经在统计后端使用这两种技术了。但我真的很想在没有谷歌分析或他们的图形API的情况下这样做。
答案 0 :(得分:1)
我会试着想一想。我会尝试这样做......
这项工作的主要部分是数学。我实际上不是数学家,但我知道它应该在这里应用,为什么。
这里的主要目标是在平面上投影坐标,因为。 WGS84
使用扁球体作为参考曲面(使用radius = 6378137 m
; flattering = 1/298.257223563
),因此它不是理想的周长,应该将其考虑在内。 +图像应该GEO
以某种方式绑定(你应该知道这个图像的角点坐标@least。如果是这样的话,这是最简单的情况。)
这种情况下的计算量不是很大,一切都会导致基本平面几何形状。
以下是可以帮助您处理地理空间数据http://www.gdal.org/的库。
我建议您,如果您对此一无所知,请咨询该领域的一些专家(也许是SatCom规范或某些大学/学院的MobCom规范)(或试用Google如果您对math
和GEO
足够熟悉,并要求将GPS
坐标投影到flat surface
的数学模型,那么你一定会得到答案。
如果您不需要非常高的准确度,请亲自尝试,也许您会幸运。
如果您对数学足够了解并尝试在栅格上放置几个点,您可以在MatLab(在本例中更适用)或Mathcad中尝试自己。
如果你能在最近的将来找到答案,我很高兴你在这里发帖或与我分享你的具体案例的解决方案。
答案 1 :(得分:1)
我需要终于在这里回答我自己的问题。对于偶然发现这一点的其他人:
我一直在使用带有topojson扩展名的d3js库。 https://github.com/mbostock/topojson