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. 用于突出显示的国家和地区的地图SDK
- 2. 在使用PHP的地图上突出显示国家/地区
- 3. 如何使用Google Chart API按国家/地区代码突出显示多个国家/地区?
- 4. 使用Google地图API显示国家/地区地图
- 5. 在Google地图中突出显示整个国家
- 6. Bing地图 - 突出显示国家与悬停多边形
- 7. 如何使用google maps api v3突出显示一个国家/地区?
- 8. 只显示谷歌地图中的特定国家(地区)
- 9. OpenStreetMap:如何显示国家/地区的区域边界?
- 10. 显示国家出现的次数最多的国家/地区Rails 3
- 11. 地址按国家/地区
- 12. 任何适用于具有国家/地区显示的地图的JavaScript API?
- 13. 如何在android中显示指定的国家/地区状态
- 14. 如何从angularjs中的国家/地区获取国家/地区名称
- 15. 国际地址国家/地区数据
- 16. 从国家/地区代码获取国家/地区名称
- 17. 根据国家/地区代码选择国家/地区
- 18. 按国家/地区搜索国家/地区代码
- 19. 当在特定国家徘徊时突出显示国家国旗在空白世界地图上
- 20. 如何使用仅限国家/地区名称在iPhone上的Google地图上获取国家/地区位置?
- 21. 如何显示此国家/地区代码?
- 22. 如何突出显示Google地图上的区域
- 23. 如何同时突出显示地图上的多个区域
- 24. 如何在地图名称中突出显示谷歌地图中的区域
- 25. 在地理海图中未突出显示的地区
- 26. Jvectormap突出显示多个国家
- 27. 国家对鼠标突出显示了
- 28. 在Rails 3中显示国家/地区表中较长的国家/地区名称作为较短的国家/地区名称
- 29. 如何根据国家/地区代码管理谷歌地图?
- 30. Symfony2:按国家/地区列出城市
你为什么要使用OSM来做这件事的原因是什么? – Manuel
@曼纽尔,没有理由,我只是需要一种方法来创建一个这样的地图。我认为OSM可以做到这一点,纠正我,如果我错了。 – madhead
没有OSM只是一个包含自愿者数据库而不是映射库的底图(比如地理数据维基)...... 它应该像上面那样是相同的映射(Lambert的Conformal Conic Projection),还是像谷歌地图这样简单的墨卡托投影?预测:http://bl.ocks.org/syntagmatic/raw/ba569633d51ebec6ec6e/。墨卡托将是最简单的。 你有兴趣用mapserver实现这个服务器端还是使用一个简单的库来实现更快的方法?它应该是一个可缩放的“滑动地图”或静态交互式地图吗? 什么语言? – Manuel