【问题标题】:Clickable continent/country maps: which way to go?可点击的大陆/国家地图:走哪条路?
【发布时间】:2012-01-17 14:58:16
【问题描述】:

有许多网站包含可点击的地图,这些地图突出显示mouseover 上的区域,并允许用户将选择范围从世界地图视图缩小到大陆级别。这是一个有趣的例子:davidlynch.org

其中许多可点击地图是使用 HTML 图像地图实现的,而另一种选择是使用例如 Google's GeoChart API。关于 HTML 图像地图选项,我想知道人们从哪里获得所有“原始数据”、所有国家和地区边界多边形。有免费的资源吗?关于 Google GeoChart 选项,我想知道它是否可扩展,或者 API 调用的数量是否受到某种限制?

是否有人对免费图书馆的可用性有一些建议,该图书馆允许直接实施具有可自定义区域的可点击地图?

【问题讨论】:

    标签: javascript html geocoding world-map


    【解决方案1】:

    嗯,这不是一个可以标记为“地理编码”的问题。

    由于这些天我一直在玩 Raphael.js,所以我在阅读您的问题标题时想到了这个 lib。我还记得 Wikipedia commons 托管了一张 SVG 世界地图。 Raphael 可以帮助您操作 svg 文件,因此这可能是一个不错的方法。 无论如何,在搜索标准“拉斐尔”之后,我找到了一个完全符合您要求的对话。所以它是:http://groups.google.com/group/raphaeljs/browse_thread/thread/46b5402c677ce274/7ff6a6a8d8f5f9fa?pli=1

    有一些实用程序脚本,以及上述 svg world 文件的链接和一个实时示例(以及 Stack Exchange 主题的链接)。
    当然有工作要做,直接调用google api可能更容易。

    根据我对 gmaps API 的经验,您必须每秒发出许多请求才能被 google 列入黑名单。就像你启动一个大批量地理编码工具一样。所以这取决于你的项目,但我认为即使你的页面很受欢迎,使用它也很安全。

    [编辑]:现在有一个live demo on RaphaelJs website

    [再次编辑]:现在存在基于 Python 和 Raphael 的完整生产工作流程:Kartograph。它真的很年轻,但看起来很有希望。

    【讨论】:

    • 此链接无效。
    • 是的,编辑已经有 6 年历史了,互联网是活的 :) !现在一切都好,感谢archive.org。
    【解决方案2】:

    看看这个。似乎可以满足您的要求并提供更多: 带有可点击区域的谷歌地图 http://codecanyon.net/item/google-maps-with-clickable-countries/3186942

    【讨论】:

      【解决方案3】:

      我第二个是 raphael.js,它是一个很好的库,可以通过各种用户交互来绘制形状。例如,您可以查看this project,它是俄罗斯的矢量图,在 Raphael.js 之上实现。它允许以编程方式突出显示区域。

      【讨论】:

        【解决方案4】:

        我可以毫无疑问地推荐两个库:1.d3JS 和 2.Raphael JS

        后者是我用来写我的

        clickable map generator web application - Make a Clickable Map

        d3JS 的学习曲线更陡峭,但你可以用它做的事情比 Raphael 多得多。另一方面,Raphael 更容易上手,合作起来也很有趣。

        【讨论】:

          猜你喜欢
          • 2019-06-24
          • 2016-07-31
          • 1970-01-01
          • 1970-01-01
          • 2017-10-03
          • 2016-10-15
          • 2019-09-18
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多