1
A
回答
2
奥凯,让我们使用JavaScript,因为我觉得这是最大的种种库。这里我将解释一些创建交互式webmap的方法。
1)第一种方法是使用普通SVG:
你可以下载或与您所选择的矢量软件底图为SVG绘制。然后你可以为每个国家的多边形分配一个唯一的ID,而在JS内部,你可以通过点击或鼠标悬停等鼠标事件访问SVG。该国的所有信息可以存储在JS以外的.json(更简单)或.xml文件中。使用从SVG事件中获得的ID,您可以从.json获取适合的信息。也许重新发明轮子,但它是高度可调的。但是我认为如果你只是想要一个静态映射它更简单,如果你正在使用一个更复杂的库。
2)第二种方法是使用对SVG相互作用库:
非常流行D3.js或Raphael.js
3)使用基于SVG专题电子地图服务库中的第三种方法:
使用JQVMAP(原vectormap.js)或非常新奥项目mapmap.js
4)利用地形电子地图服务库
在这里你可以使用开放图书馆leaflet.js或openlayers.js。有了这些,最好的方法就是,将您的国家添加为.geojson。 Geojson是一个非常好的格式,它允许您使用大多数地理软件与您的国家进行交互。
5)创建UND使用自己瓦片
这种方法是最高效的解决方案,但不是简单的实现。 Here是一个非常好的教程,解释了五种方法。但我认为最简单的是使用TileMill。
6)使用地图服务器 如果你不熟悉mapservers,这应该只有当你要实现广泛的应用考虑。 Nice Mapservers是Deegree和受欢迎的Geoserver。
所有这些方法都有其优点和缺点,但我认为其中一种解决方案将满足您的需求,并祝您取得最佳成绩!
相关问题
- 1. 如何使用Google Chart API按国家/地区代码突出显示多个国家/地区?
- 2. 使用Google地图API显示国家/地区地图
- 3. 在Google地图中突出显示整个国家
- 4. Bing地图 - 突出显示国家与悬停多边形
- 5. 如何使用google maps api v3突出显示一个国家/地区?
- 6. 地址按国家/地区
- 7. 如何从angularjs中的国家/地区获取国家/地区名称
- 8. 当在特定国家徘徊时突出显示国家国旗在空白世界地图上
- 9. 根据国家/地区代码选择国家/地区
- 10. 如何使用仅限国家/地区名称在iPhone上的Google地图上获取国家/地区位置?
- 11. Jvectormap突出显示多个国家
- 12. 如何根据国家/地区代码管理谷歌地图?
- 13. Symfony2:按国家/地区列出城市
- 14. 显示完整的国家/地区名称,而不是国家/地区代码 - WooCommerce
- 15. 国家/地区/城市DB
- 16. 基于yii2中的国家/地区的显示时间
- 17. 在不同的国家/地区显示不同的Wordpress菜单
- 18. 显示大陆地图和放大显示国家
- 19. 试图突出显示图像地图区域,而beeing响应
- 20. 防止突出显示地图图块
- 21. 用Bing地图突出显示图钉
- 22. 有没有更好的办法来处理国家/地区和国家/地区的国家名单?
- 23. 如何在Google电子表格中与国家/地区区域进行地图
- 24. pof如何从手动或自动选择的国家/地区生成城市
- 25. 在高地图中划线时,突出显示区域线图
- 26. 按国家和地区获取时区
- 27. 用bootstrap-formhelpers显示国家/地区列表
- 28. 仅在特定国家/地区显示链接
- 29. D3地图显示国名
- 30. 在谷歌地图上选择地区或国家的边界
你为什么要使用OSM来做这件事的原因是什么? – Manuel
@曼纽尔,没有理由,我只是需要一种方法来创建一个这样的地图。我认为OSM可以做到这一点,纠正我,如果我错了。 – madhead
没有OSM只是一个包含自愿者数据库而不是映射库的底图(比如地理数据维基)...... 它应该像上面那样是相同的映射(Lambert的Conformal Conic Projection),还是像谷歌地图这样简单的墨卡托投影?预测:http://bl.ocks.org/syntagmatic/raw/ba569633d51ebec6ec6e/。墨卡托将是最简单的。 你有兴趣用mapserver实现这个服务器端还是使用一个简单的库来实现更快的方法?它应该是一个可缩放的“滑动地图”或静态交互式地图吗? 什么语言? – Manuel