1

Leaflet

Summer IS HERE

c51f706ffadb5f94fdd3bc07e08120c5.png

Summer

8edc5e178e056f8c37a3aaca6c43e456.png

07f87df7f12c0ae9c04f3f41996a804e.png

底层核心

29ad7fc3a26fcd07c422064c0393248a.png

Leaflet是一个轻量级的JavaScript库,专为移动友好型交互式地图设计。它使用简单的HTML5和CSS3,以及跨浏览器的JavaScript,使得开发者可以轻松地在网页上嵌入地图。

8f54037d9b0a284bedb994bd09d3dc21.png

Summer

6343b5c15d1c082a6eeec7e7b941be9f.png

484b23cf7a5c4d357b4ffbbddced489f.png

推荐指数

3ea890d1b04f5789c688344d84d752c5.png

★★★★★

Summer

170ad7c94e90a667c3f7950630aa7841.png

589ac1c8df6a420c65a451c2c3c3f504.png

内部架构与优点

62000e8abd0561d52a792f4fd09f3a81.png

Leaflet具有清晰的API文档和丰富的插件生态系统,支持多种地图数据源和地图覆盖物。其代码结构清晰,易于学习和使用,是GIS前端开发的理想选择。

Summer

97fb3da72671a2a0a6e2d670aaf06c6a.png

fee5468f022b94c251389c8e5363089c.png

示例代码

4f746155c7763f35217f043f6471fdea.png

 
 
var map = L.map('mapid').setView([51.505, -0.09], 13);

L.tileLayer('https//{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
    maxZoom 19,
}).addTo(map);

2

OpenLayers

Summer IS HERE

bf065f81f2eadc3f8d17f8e7fc6eb91b.png

Summer

a1040f0861754aca7c29d382e45802d4.png

2a9bbfc56a6406dc8e6ab4bb4235ec5a.png

底层核心

279d0b8aedbcf8c6b71e3d9ccf1ead4a.png

OpenLayers是一个功能强大的前端GIS框架,支持在Web浏览器中创建交互式地图应用程序。它提供了丰富的地图控件和交互功能,支持多种地图投影和矢量数据。

Summer

6fa91c0d31691085f901aa8b00d6c292.png

5f7c90e109b5631deea104e97d7761ce.png

推荐指数

98a06bf9f3876f992fd35b644eb12127.png

★★★★☆

Summer

f3b399260a445dd0f3ce9a2f83ad10b9.png

6e74092cdbb8f7f62b1e3b9fdc95f49b.png

内部架构与优点

c58331ad362a14a24fad16a653749452.png

OpenLayers具有高度可定制性和可扩展性,可以处理复杂的GIS需求。其强大的地图渲染能力和灵活的交互设计,使得开发者能够轻松构建高质量的GIS应用。

Summer

def8b01ce48fd8021de883c5b34f989c.png

d739135af5f07550de16b50c51d7b267.png

示例代码

6b9553c3996846dffbfbfdeeb050eecf.png

 
 
import Map from 'ol/Map';
import View from 'ol/View';
import TileLayer from 'ol/layer/Tile';
import OSM from 'ol/source/OSM';

const map = new Map({
    target 'map',
    layers [
        new TileLayer({
            source new OSM()
        })
    ],
    view new View({
        center [0, 0],
        zoom 2
    })
});

3

Mapbox GL JS

Summer IS HERE

db6bbe302a6d34ef49d7078b01257414.png

Summer

a4a11c366625cf03fdda43f0756e835e.png

e56865c7639d95036def1bc66020d3bc.png

底层核心

499cb230aaa4af76e0cebdaebdec47a8.png

Mapbox GL JS是一个基于WebGL的开源JavaScript库,专注于提供高性能的交互式地图渲染。它支持矢量瓦片和自定义样式,可以实现高度定制化的地图效果。

Summer

ad5dc0db622ba1ae9d4682cdd8b0466e.png

3ab7f3e62f26357d670f56c5ce78d318.png

推荐指数

5c10ccf381c64fef8cfbceabf7725361.png

★★★★☆

Summer

30111eada2dc5607e567d412d7dc71f0.png

01663137ee8b72ec1eb1f2fa6226c272.png

内部架构与优点

8c002bab2d62fc60cf87ae2ff77c09d1.png

Mapbox GL JS具有出色的渲染性能和丰富的样式编辑功能,可以轻松实现复杂的地图效果。同时,它还支持三维地图和地图动画,为GIS应用提供了更多的可能性。

Summer

dd38b5ae7677057af1f9c084c2f384c1.png

b02bfc4e937a88b7c81bf40fa63dc846.png

示例代码

05ef7873cd120a3a8bb992ebc44bc71d.png

 
 
<!DOCTYPE html>  
<html>  
<head>  
    <meta charset='utf-8' />  
    <title>Mapbox GL JS 示例</title>  
    <meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' />  
    <script src='https://api.mapbox.com/mapbox-gl-js/v2.2.0/mapbox-gl.js'></script>  
    <link href='https://api.mapbox.com/mapbox-gl-js/v2.2.0/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_MAPBOX_ACCESS_TOKEN'; // 请替换为你的Mapbox访问令牌  
    var map = new mapboxgl.Map({  
        container: 'map', // 容器ID  
        style: 'mapbox://styles/mapbox/streets-v11', // 样式URL  
        center: [-74.5, 40], // 初始中心点  
        zoom: 9 // 初始缩放级别  
    });  
</script>  
  
</body>  
</html>

4

Cesium

Summer IS HERE

044678335e6fefc0f374900c1feffabe.png

Summer

ad79290c4ede7b19da7c9e2db68ff9ed.png

b05b192ac0fbf10119458597eb4733d8.png

底层核心

5c3d1df8c0136b6aaff61467277fe51d.png

Cesium是一个用于构建三维地球和地图的WebGL库。它支持大规模的三维地形和建筑物渲染,以及复杂的三维数据可视化。

Summer

64fca189bf4aeda68edc4461aa9073d1.png

05a79da24f1a8548805a557d10427603.png

推荐指数

792758aa37ccfc682777c8d3c17327a6.png

★★★★☆

Summer

3df824de7dffc80e4db0acb25e431ed3.png

ad23c5793b8ddad384be5a8cd4fe78f8.png

内部架构与优点

7fffe552c91e2ae8c19c59de56576388.png

Cesium具有强大的三维渲染能力和丰富的数据处理功能,可以实现高质量的三维GIS应用。同时,它还支持多种数据源和格式,为开发者提供了更多的选择。

Summer

7931067a6b9cf678e1f0242385c4c42f.png

889e20afe4ec630b45c3eef39b2f760e.png

示例代码

b8face492ed95ddc710aebff6ccca759.png

 
 
<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>Cesium Demo</title>  
    <script src="https://cesium.com/downloads/cesiumjs/releases/1.89/Build/Cesium/Cesium.js"></script>  
    <link href="https://cesium.com/downloads/cesiumjs/releases/1.89/Build/Cesium/Widgets/widgets.css" rel="stylesheet">  
</head>  
<body>  
    <div id="cesiumContainer" style="position: absolute; top: 0; left: 0; height: 100%; width: 100%;"></div>  
    <script>  
        var viewer = new Cesium.Viewer('cesiumContainer');  
        // 如果需要,可以在这里添加更多代码,比如加载KML、GeoJSON等  
    </script>  
</body>  
</html>)

5

AntV L7

Summer IS HERE

84ebde02582295bdaffc46607f2629e7.png

Summer

cc3d1f0891266d364314c8aeb28a5875.png

4891158ae6b9fa407938c4d2801753c5.png

底层核心

c7e930a59313d25d34a71f6686557015.png

AntV L7是一个基于WebGL的地理空间数据可视化库,支持多种地图数据源和丰富的可视化效果。

Summer

351ef6e142dd1d902065ddceb7aaf2ad.png

361bd228c7b2c850268466a284a1dc9c.png

推荐指数

b3bca6cf31b6ae30d8aedcc44dbc8d00.png

★★★☆☆

6

ArcGIS API for JS

Summer IS HERE

4a5424222e1c63ddb2c8a59c5adb2293.png

Summer

b6c5edd609ef37714d6daafbb61e314b.png

a78feb3813457595117719d9fe6691fc.png

底层核心

086c3985e25b25a5ee85dc727522fb1b.png

ArcGIS API for JS是ArcGIS开发套件中的一部分,提供了丰富的GIS功能和强大的数据处理能力。

Summer

0fe669feb37745416d3f83cb13b22b3d.png

013fdf4d2c6afb646f732b06850db34f.png

推荐指数

f896be7c91ba7d0c5e08d891f5c0905b.png

★★★☆☆(因不开源且收费较高)

7

Google Maps JS API

Summer IS HERE

1dfa7cdd45a6bbccad838db1e4eaf4bb.png

Summer

7ad563865f2bb20c4964b5ee42873745.png

5d7c318c0b77757f67655cb8d7932e9b.png

底层核心

4b7509a2fe38ce5c9cc5218232bbbb55.png

Google Maps JS API是谷歌提供的地图开发接口,具有全球覆盖的地图数据和丰富的API功能。

Summer

525af745181634fc6b30a5988af2144f.png

d9dc4fa48e439294859bdb9fb3e0e508.png

推荐指数

aa5fdd2450cc1f15dc1ad8cd94cdd203.png

★★★★☆(境外数据更完善)

8

Mapbox.js

Summer IS HERE

95845b2063bf948084fbef8caa95646c.png

Summer

3d5fb9017bd19bd2842d979805d97075.png

a6bf13297e14d997327c1b9a5cfc9e13.png

底层核心

7cd322699225f648f6a08f16b495dde7.png

Mapbox.js是Leaflet的一个扩展插件,提供了更多自定义和扩展功能。

Summer

dd6efff299e98c41a4a88e7646de25b8.png

11eece419e3384c28d29ba1dd78e3fe9.png

推荐指数

338552887a00699234ee3ec93df078e7.png

★★★☆☆

9

cesiumlab

Summer IS HERE

2072603c4656168cb9c71261af608c2e.png

Summer

3533768cf0dd583a0feca161452e5def.png

8c090dcb5ffe02ab70482b8bd60c95be.png

底层核心

dde900afb2e47f6ee434f0512b61206f.png

cesiumlab是一个三维数据模型处理平台,主要用于处理三维格式的数据并将其转换成其他格式。

Summer

f3270a29ef2294c05b5eea0edbea38f9.png

8fb04941eb0946b4abd9fac9fec11637.png

推荐指数

d007571949545b267a62cc1c8126912c.png

★★★☆☆(主要针对桌面端应用)

10

mapshaper

Summer IS HERE

d0f60cf26ec01938ee914c0eb9685eb2.png

Summer

db2ddbc3efff99130a8ae50e17dfc428.png

ea80139ca37c091c2220e3662f166113.png

底层核心

35829a96dcb9847d9522c2e4745582a4.png

mapshaper是一个Web端的GIS工具,用于GIS数据格式之间的转换以及简单的数据预览和处理。

Summer

02d21c0a518e0a39c5bc928c85b28e80.png

5a8355d2bcdd2f96e4181113d8cb1389.png

推荐指数

b1793fc3149118f8a5842c0cdd457d92.png

★★★☆☆(主要针对数据处理和格式转换)

总结每个GIS前端框架都有其独特的优势和适用场景。在选择框架时,需要根据项目的

本公众号只做干货,分享实际项目中的点点滴滴

希望您阅读后有所收获

同时,也希望您能在下方给个赞赏

您的赞赏

是我持续创作的最大动力!

非常感谢!

6b1b894a745724a6fa8e5bb802bfcba8.gif

1、集齐49款GIS常用软件,总有一款是你需要的!

2、ArcGIS Pro中常用的空间分析功能

3、开源 Web GIS 制作3D建筑

4、ArcGIS Pro 和 ChatGPT集成思路

5、Segment Anything 模型的 3 个地理空间和遥感用例

6、Segment Anything模型用于地理空间数据

7、卫星基础知识&&遥感卫星

8、市面上10款GIS软件优劣性比较

a5203ff5f4d870e18795c6c005195933.gif

0a02dd215fcc8174d4e1b16d6e376137.gif

点分享

a22a2cc70ef9f651264ec6690f0d468b.gif

点点赞

eeb3c63f16d84012b125a79c7f85ef70.gif

点在看

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐