首页 > 解决方案 > 如何在谷歌地图上显示地区/国家/地区?

问题描述

我们如何在 Angular JS 中根据特定国家/地区实现突出显示的州边界,例如,如果我们选择印度,那么我们需要用突出显示的边界显示其所有州。在我们的例子中,我们希望为“卢旺达”国家实现它,在那里我们可以显示它的状态,就像这张图片中显示的那样,

这是图像

标签: angulargoogle-mapsgoogle-maps-api-3

解决方案


不幸的是,Google Maps JavaScript API 没有暴露地理特征的边界。公共问题跟踪器中有一个非常古老(10 年)的功能请求,但 Google 似乎没有为此任务设置优先级:

https://issuetracker.google.com/issues/35816953

您应该使用来自第三方来源的数据来显示州和地区的边界。一种选择是使用 Open Street Maps 提供的 GeoJSON 信息。我建议阅读以下解释如何从 OSM 下载 GeoJSON 数据的答案:

https://stackoverflow.com/a/40172098/5140781

我刚刚做了一个快速测试并下载了卢旺达各州(东部省、北部省、南部省、西部省和基加利市)的简化边界 GeoJSON。您当然可以下载详细的多边形。之后,我只使用了数据层文档中描述的示例代码:

https://developers.google.com/maps/documentation/javascript/examples/layer-data-simple

并加载了我的示例 GeoJSON 文件(http://aux.xomena.elementfx.com/sosamples/rwanda_states.json)。结果显示在屏幕截图中

在此处输入图像描述

您还可以在http://aux.xomena.elementfx.com/sosamples/rwanda_states.html运行示例代码

我希望它有帮助!


推荐阅读