mapbox - 使用 Mapbox 在每个国家/地区放置一个标记

标签 mapbox geojson marker country

我正在使用 Mapbox 构建多分区统计图。 与此示例类似,https://www.mapbox.com/mapbox.js/example/v1.0.0/choropleth-joined-data-multiple-variables/

但是,我使用的是国家/地区而不是美国的州。 我已经让 map 正常工作并且可以在图层之间切换 不过,我有一个额外的要求,即在每个国家/地区添加一个标记,显示该国家/地区有多少个活跃项目。 我发现如何通过此示例向 map 添加自定义标记,https://www.mapbox.com/mapbox.js/example/v1.0.0/divicon/

问题是我需要在每个国家的中心放置一个标记。 有人知道如何在每个国家/地区的中间放置标记吗?

我尝试使用自然地球管理 0 标签点数据,但每个国家有多个点。看起来“scalerank = 0”点是这些国家的中间,但如果我过滤这些点,我仍然会得到一些国家的多个点(例如俄罗斯有 4 个点,但比利时也有 4 个点)。 如果您在 map 上绘制所有scalerank 0 点,您将得到以下结果: https://a.tiles.mapbox.com/v4/persyval.jg5p7gm7/page.html?access_token=pk.eyJ1IjoicGVyc3l2YWwiLCJhIjoiX3lrSTNYYyJ9.6Ps4OlBCYmlkxQksKsGb7A#6/45.159/12.206

有人知道每个国家/地区有一个点的数据集,或者使用 Mapbox 在每个国家/地区的中心放置标记的其他方法吗?

最佳答案

似乎很难找到用于放置标记的国家点列表。 因此,我将提到的管理标签记为 0 分,并尝试对其进行清理,以便每个国家/地区只有一个适当的标记。

可以在此处下载 GEOJSON 格式的结果: https://drive.google.com/file/d/0B6IQhfb-UYeUYk1mcUZaMmV0S1U/edit?usp=sharing

如果您想直观地表示这些点,请查看此 map : https://a.tiles.mapbox.com/v4/persyval.jgk4767c/page.html?access_token=pk.eyJ1IjoicGVyc3l2YWwiLCJhIjoiX3lrSTNYYyJ9.6Ps4OlBCYmlkxQksKsGb7A#4/36.49/34.32

我需要这一点来进行概念验证项目,所以我没有仔细检查所有标记,我也没有考虑到一些政治上更敏感的国家边界。 如果您的项目对此很重要,请在使用前检查该文件,但可以根据自己的喜好轻松编辑该文件中的点。

关于mapbox - 使用 Mapbox 在每个国家/地区放置一个标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25819849/

相关文章:

leaflet - 使用传单拖动标记时使用折线标记

java - 显示 map 框的导航 View ,方向单位为公里/分钟而不是英里/英尺

ios - 如何在 MapBox SDK for IOS 上检测长按手势?

javascript - geoJson 属性添加/更新

django - 如何使用 View 从 PostGIS 中提取几何图形,然后使用 Django 将其添加到模板中的传单 map

google-maps - Google map API 标记图标 URL?

javascript - 在 map 框/传单图层控件中组合叠加

mapbox - Turf.js 查找使用 Mapbox GL JS 加载的数据边界框?

javascript - 从 geoJson 中提取提要级别元数据以用作 Leaflet 消息框

javascript - 如何每 5 秒更新一次传单标记