在html里使用mapbox编写 带有海量的点数据的代码,地图要影像和地图可以切换
时间: 2023-05-17 19:04:38 浏览: 83
可以使用 Mapbox GL JS 库来实现这个功能。首先,需要在 HTML 文件中引入 Mapbox GL JS 库的 JavaScript 和 CSS 文件。然后,创建一个包含地图的 div 元素,并设置其样式和大小。接下来,使用 Mapbox GL JS 的 API 创建地图,并添加影像和地图切换的控件。最后,使用 Mapbox GL JS 的 API 添加海量的点数据到地图上。
以下是一个示例代码:
```
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8' />
<title>Mapbox GL JS Example</title>
<meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' />
<script src='https://api.mapbox.com/mapbox-gl-js/v2.3.1/mapbox-gl.js'></script>
<link href='https://api.mapbox.com/mapbox-gl-js/v2.3.1/mapbox-gl.css' rel='stylesheet' />
<style>
body { margin: 0; padding: 0; }
#map { position: absolute; top: 0; bottom: 0; width: 100%; }
</style>
</head>
<body>
<div id='map'></div>
<script>
mapboxgl.accessToken = 'YOUR_ACCESS_TOKEN';
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v11',
center: [116.4074, 39.9042],
zoom: 10
});
map.addControl(new mapboxgl.NavigationControl());
map.addControl(new mapboxgl.FullscreenControl());
map.addControl(new mapboxgl.ScaleControl());
map.addControl(new mapboxgl.AttributionControl());
map.on('load', function() {
map.addSource('points', {
type: 'geojson',
data: 'YOUR_GEOJSON_DATA'
});
map.addLayer({
id: 'points',
type: 'circle',
source: 'points',
paint: {
'circle-radius': 5,
'circle-color': '#007cbf'
}
});
});
</script>
</body>
</html>
```
请注意,需要将 YOUR_ACCESS_TOKEN 替换为您的 Mapbox 访问令牌,将 YOUR_GEOJSON_DATA 替换为包含海量点数据的 GeoJSON 文件的 URL。此外,还可以根据需要更改地图的样式、中心点和缩放级别。
阅读全文