Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 显示地图并突出显示某些国家_Javascript_Html_Google Maps_Maps - Fatal编程技术网

Javascript 显示地图并突出显示某些国家

Javascript 显示地图并突出显示某些国家,javascript,html,google-maps,maps,Javascript,Html,Google Maps,Maps,以下是我正在努力做的事情: 在页面上显示地图(谷歌地图或其任何竞争对手,可以免费…)并在此地图上突出显示某些国家(这些国家的列表将通过示例存储在变量中) 我试着在地图上画多边形,上面有(几乎)所有国家的地理json列表,但太重了 有什么想法吗?我相信你需要一个多边形来实现这一点 就像这个例子: 或者查看这个可以为您完成所有艰苦工作的网站:) 最后,还有谷歌艺术 请在此处查看: 如果您只需要不同颜色的国家边界,您可以尝试。如果您以KML文件格式存储多边形并将其作为文件加载,则可以在地图中

以下是我正在努力做的事情: 在页面上显示地图(谷歌地图或其任何竞争对手,可以免费…)并在此地图上突出显示某些国家(这些国家的列表将通过示例存储在变量中)

我试着在地图上画多边形,上面有(几乎)所有国家的地理json列表,但太重了


有什么想法吗?

我相信你需要一个多边形来实现这一点


就像这个例子:

或者查看这个可以为您完成所有艰苦工作的网站:)

最后,还有谷歌艺术
请在此处查看:


如果您只需要不同颜色的国家边界,您可以尝试。

如果您以KML文件格式存储多边形并将其作为文件加载,则可以在地图中创建非常复杂的多边形,而不会降低性能。KML是用于地理数据的基于XML的矢量文件格式。在Google Maps中使用KML文件的好处在于,无论原始多边形数据有多复杂,它们都会在Google服务器上渲染为简单的PNG文件,随时与地图视图的当前分辨率和边界框相匹配。所以所有的复杂性都由谷歌的服务器端处理

这是一个例子,我在德国的一个联邦州使用了KML面具

为了快速查看,KML文件也可以直接加载到谷歌地图公共网站(通过在搜索字段中输入它们的URL)。这是我在上述项目中使用的KML文件。(我实际上在这里使用了一个KMZ文件,但这只是打包到ZIP存档中的一个KML文件。您可以使用普通的ZIP工具对其进行打包和解包。)[更新:这在新的地图版本(从2014年开始)中不再有效。]

请注意,谷歌暗示对KML/KMZ文件的大小有限制(目前未压缩10MB,压缩3MB-)。如果您的KML文件太大,可以使用软件来降低复杂性(请参见示例和)

请注意,如果多边形是静态的(如国家或城市的边界),而不是动态生成的(例如,取决于任何用户输入),则KML文件仅是一种解决方案。对于动态多边形,您仍然必须使用Maps API的多边形类,并遵守您提到的复杂性限制。
(但您仍然可以自由使用KML图层,并根据用户输入打开和关闭它们,只要多边形细节不必更改。)

问题在于它们不够具体,我的意思是,我需要在地图中标记一个城市或一个社区。有没有插件/代码可以做到这一点?使用Google Maps API版本2,该版本长期以来一直被弃用。不相信长岛是纽约州的一部分,