Maplibre GL JS 中文文档Maplibre GL JS 中文文档
介绍
插件
样式规范
API
案例
指南
介绍
插件
样式规范
API
案例
指南
  • 介绍
  • 插件
  • 样式规范
    • 弃用功能
    • 表达式
    • 字形
    • 图层
    • 光照
    • 投影
    • 根属性
    • 天空
    • 数据源
    • 精灵图
    • 状态
    • 地形
    • 过渡
    • 类型
  • API
    • media

      • 为 MapLibre GL JS 做贡献
    • Classes

      • AJAXError
      • Actor
      • AlphaImage
      • AttributionControl
      • BoxZoomHandler
      • CanonicalTileID
      • CanvasSource
      • CircleStyleLayer
      • ClickZoomHandler
      • CooperativeGesturesHandler
      • DEMData
      • Dispatcher
      • DoubleClickZoomHandler
      • DragPanHandler
      • DragRotateHandler
      • EdgeInsets
      • ErrorEvent
      • Event
      • Evented
      • FeatureIndex
      • FullscreenControl
      • GeoJSONFeature
      • GeoJSONSource
      • GlobeControl
      • Hash
      • HeatmapStyleLayer
      • ImageAtlas
      • ImageManager
      • ImageSource
      • KeyboardHandler
      • Layout<Props>
      • LngLat
      • LngLatBounds
      • LogoControl
      • Map
      • MapMouseEvent
      • MapTouchEvent
      • MapWheelEvent
      • Marker
      • MercatorCoordinate
      • NavigationControl
      • OverscaledTileID
      • Popup
      • RGBAImage
      • RasterDEMTileSource
      • RasterTileSource
      • ScaleControl
      • ScrollZoomHandler
      • Style
      • abstract StyleLayer
      • SubdivisionGranularityExpression
      • SubdivisionGranularitySetting
      • TapDragZoomHandler
      • TapZoomHandler
      • TerrainControl
      • ThrottledInvoker
      • Tile
      • TouchPanHandler
      • 抽象 TwoFingersTouchHandler
      • TwoFingersTouchPitchHandler
      • TwoFingersTouchRotateHandler
      • TwoFingersTouchZoomHandler
      • TwoFingersTouchZoomRotateHandler
      • VectorTileSource
      • VideoSource
      • WorkerPool
    • Enumerations

      • MessageType
      • ResourceType
      • TextFit
    • Functions

      • addProtocol()
      • addSourceType()
      • clearPrewarmedResources()
      • createTileMesh()
      • getMaxParallelImageRequests()
      • getRTLTextPluginStatus()
      • getVersion()
      • getWorkerCount()
      • getWorkerUrl()
      • importScriptInWorkers()
      • prewarm()
      • removeProtocol()
      • setMaxParallelImageRequests()
      • setWorkerCount()
      • setWorkerUrl()
    • Interfaces

      • ActorTarget
      • AttributeBinder
      • Bucket
      • CustomLayerInterface
      • Handler
      • IActor
      • IControl
      • MousePanHandler
      • MousePitchHandler
      • MouseRollHandler
      • MouseRotateHandler
      • Projection
      • Source
      • StyleImageInterface
      • Subscription
    • Type aliases

      • ActorMessage<T>
      • AddLayerObject
      • AddProtocolAction
      • Alignment
      • AnimationOptions
      • AroundCenterOptions
      • AttributionControlOptions
      • CalculateTileZoomFunction
      • CameraForBoundsOptions
      • CameraOptions
      • CameraUpdateTransformFunction()
      • CanvasSourceSpecification
      • CenterZoomBearing
      • CircleGranularity
      • ClusterIDAndSource
      • Complete<T>
      • Config
      • ControlPosition
      • Coordinates
      • CreateTileMeshOptions
      • CrossFaded<T>
      • CustomRenderMethod()
      • CustomRenderMethodInput
      • DEMEncoding
      • DashEntry
      • DistributiveKeys<T>
      • DistributiveOmit<T, K>
      • DragPanOptions
      • DragRotateHandlerOptions
      • EaseToOptions
      • ExpiryData
      • FeatureIdentifier
      • FitBoundsOptions
      • FlyToOptions
      • FullscreenControlOptions
      • GeoJSONFeatureDiff
      • GeoJSONFeatureId
      • GeoJSONSourceDiff
      • GeoJSONSourceOptions
      • GeoJSONWorkerOptions
      • GeoJSONWorkerSourceLoadDataResult
      • GeolocateControlOptions
      • GestureOptions
      • GetClusterLeavesParams
      • GetGlyphsParameters
      • GetGlyphsResponse
      • GetImagesParameters
      • GetImagesResponse
      • GetResourceResponse<T>
      • GlyphPosition
      • GlyphMetrics
      • GridKey
      • HandlerResult
      • IndicesType
      • JumpToOptions
      • Listener()
      • LngLatBoundsLike
      • LngLatLike
      • LoadGeoJSONParameters
      • LogoControlOptions
      • MapContextEvent
      • MapDataEvent
      • MapEventType
      • MapGeoJSONFeature
      • MapLayerEventType
      • MapLayerMouseEvent
      • MapLayerTouchEvent
      • MapLibreEvent
      • MapLibreZoomEvent
      • MapOptions
      • MapProjectionEvent
      • MapSourceDataType
      • MapSourceDataEvent
      • MapStyleDataEvent
      • MapStyleImageMissingEvent
      • MapTerrainEvent
      • MarkerOptions
      • MessageData
      • NavigationControlOptions
      • /api/type-aliases/Offset.html
      • OverlapMode
      • PaddingOptions
      • PluginState
      • PointLike
      • PointProjection
      • PopupOptions
      • PositionAnchor
      • PossiblyEvaluatedValue<T>
      • ProjectionData
      • ProjectionDataParams
      • QueryRenderedFeaturesOptions
      • QuerySourceFeatureOptions
      • RTLPluginStatus
      • Rect
      • RemoveSourceParams
      • RequestParameters
      • RequestResponseMessageMap
      • RequestTransformFunction()
      • RequireAtLeastOne<T>
      • ScaleControlOptions
      • Serialized
      • SerializedObject<S>
      • SerializedStructArray
      • SetClusterOptions
      • SourceClass()
      • SpriteOnDemandStyleImage
      • StyleGlyph
      • StyleImage
      • StyleImageData
      • StyleImageMetadata
      • StyleOptions
      • StyleSetterOptions
      • StyleSwapOptions
      • SymbolQuad
      • TileMesh
      • TileParameters
      • TileState
      • TransformStyleFunction()
      • Unit
      • UpdateImageOptions
      • UpdateLayersParamaeters
      • WorkerDEMTileParameters
      • WorkerTileParameters
      • WorkerTileResult
  • 案例
    • 3D建筑显示
    • 3D室内地图多边形挤出
    • 3D地形
    • 使用babylon.js添加3D模型
    • 使用three.js添加带阴影的3D模型
    • 在地形上使用three.js添加3D模型
    • 使用three.js添加3D模型
    • 添加默认标记
    • 添加云优化地理TIFF (COG)
    • 使用REST API添加DeckGL图层
    • 添加动画图像
    • 添加生成的图像
    • 动态生成并添加缺失图标到地图
    • 向地图添加可拉伸图片
    • 向地图添加图标
    • 动画线条
    • 绕点相机动画
    • 图像序列动画
    • 标记动画
    • 点动画
    • 沿路径点动画
    • 符号跟随鼠标动画
    • 更改版权信息位置
    • 自定义相机动画
    • 添加Canvas数据源
    • 使地图在点击符号时居中
    • 设置地面以上的中心点
    • 根据缩放级别更改建筑物颜色
    • 更改标签大小写
    • 检查是否支持WebGL
    • 使用自定义属性显示HTML集群
    • 创建和样式化集群
    • 使用按钮更改图层颜色
    • 添加等高线
    • 合作手势
    • 使用自定义标记图标
    • 添加自定义样式图层
    • 使用数据驱动属性设置线条样式
    • 禁用地图旋转
    • 禁用滚动缩放
    • 显示和样式丰富文本标签
    • 创建可拖动标记
    • 创建可拖动点
    • 绘制一个圆形
    • 使用备用图像
    • 使用addProtocol转换特性属性
    • 向多边形添加图案
    • 通过文本输入过滤符号
    • 通过切换列表过滤符号
    • 在图层内过滤
    • 将地图适配到边界框
    • 缓慢飞行到位置
    • 飞行到位置
    • 查看全屏地图
    • 使用游戏控制导航地图
    • 在标签下方添加新图层
    • 添加GeoJSON线条
    • 添加自定义标记
    • 添加GeoJSON多边形
    • 在地球仪上加载3D模型
    • 地球仪大气层
    • 简单自定义地球仪
    • 自定义瓦片地球仪
    • 在地球仪上显示填充挤出层
    • 使用矢量地图显示地球仪
    • 地球仪上缩放和行星大小的关系
    • 哈希路由
    • 地球仪上带地形高程的热力图
    • 创建热力图图层
    • 添加多方向山体阴影图层
    • 添加山体阴影图层
    • 创建悬停效果
    • 显示带地形高程的混合卫星地图
    • 显示非交互式地图
    • 跳转到一系列位置
    • 切换地图语言
    • 显示跨越180度子午线的线条
    • 使用表达式创建渐变线条
    • 添加实时数据
    • 实时更新地图要素
    • 查看本地GeoJSON文件(实验性)
    • 查看本地GeoJSON文件
    • 使用本地生成的表意文字
    • 定位用户位置
    • 细节层次控制
    • 添加栅格瓦片源
    • 使用Mapbox GL Draw绘制多边形
    • 支持从右到左文本
    • 使用 Terra-Draw 绘制几何图形
    • 测量距离
    • 获取鼠标指针坐标
    • 从单个GeoJSON源添加多个几何图形
    • 显示地图导航控件
    • 使用内边距偏移消失点
    • PMTiles 源和协议
    • 点击多边形显示信息
    • 点击显示弹出窗口
    • 悬停显示弹出窗口
    • 显示弹出窗口
    • 获取鼠标指针下的要素
    • 渲染世界副本
    • 限制地图平移到某个区域
    • 显示卫星地图
    • 基于滚动位置飞行到特定位置
    • 设置俯仰角和方位角
    • 为标记添加弹出窗口
    • 显示一个地图
    • 天空、雾和地形
    • 同步多个地图的移动
    • 创建时间轴滑块
    • 切换deck.gl图层
    • 切换交互功能
    • 可变标签放置
    • 可变偏移标签放置
    • 添加矢量瓦片源
    • 在地图上播放视频
    • 可视化人口密度
    • 添加WMS服务
    • 缩放至线要素
  • 指南
    • 优化MapLibre性能: 大型GeoJSON数据集的技巧
    • Leaflet迁移指南
    • Mapbox迁移指南
    • OpenLayers迁移指南

插件

用户界面插件

  • 💙 maplibre-gl-compare - 允许用户通过左右滑动比较两个地图;
  • any-routing - 用于计算路线的模块化插件;
  • Gauge Legend - 用于MapLibre GL JS的动态仪表图例;
  • mapbox-gl-controls - 添加控件用于标尺、样式检查器、本地化和样式切换器;
  • mapbox-gl-draw - 添加支持在地图上绘制和编辑要素的功能;
  • mapbox-gl-elevation - 添加一个控件用于从地形RGB瓦片集中检索高度信息;
  • mapbox-gl-infobox - 添加一个控件用于显示信息框或渐变;
  • mapbox-gl-legend - 添加一个控件用于显示从地图样式生成的图例;
  • mapbox-gl-valhalla - 添加一个控件用于从valhalla服务器提供等时线特性;
  • mapboxgl-minimap - 添加一个控件用于显示当前地图的微型概览;
  • maplibre-compass-pro - 为MapLibre GL提供老式指南针(带罗盘玫瑰花); 演示
  • maplibre-geoman - 用于绘制和编辑几何图层的插件; 演示
  • maplibre-preload - 一个用于预加载瓦片和在使用MapLibre GL JS的目标移动时平滑体验的小型零配置插件;
  • maplibre-gl-basemaps - 一个用于切换栅格底图的插件;
  • maplibre-gl-export - 添加一个控件用于将地图导出为PDF或PNG、JPEG和SVG等图像;
  • maplibre-gl-map-to-image - 从地图创建静态图像数据并将其设置为目标html图像元素的src; 类似于maplibre-gl-export但适用于将图像嵌入文档而非打印整页的场景;
  • maplibre-gl-measures - 一个用于在地图上进行测量的插件;
  • maplibre-gl-opacity - 一个用于切换图层(类似Leaflet.control.layers)并更新不透明度的插件; 演示
  • maplibre-gl-temporal-control - 一个用于轻松制作时间数据动画的插件; 演示
  • route-snapper - 绘制贴合道路的路线和区域;
  • Terra Draw - 该库有一个MapLibre GL JS适配器,为地图提供绘图和几何编辑功能;
  • maplibregl-minimap - 用于maplibregl的可自定义迷你地图控件;
  • maplibre-gl-style-flipper - 用于在MapLibre GL JS中切换不同地图样式的自定义控件;
  • maplibre-gl-google-streetview - 将Google街景集成到任何MapLibre地图中的插件;

地理编码和搜索插件

  • mapbox.photon - 添加一个控件,提供来自Photon API的地理编码功能;
  • 💙 maplibre-gl-geocoder - 添加地理编码器控件;
  • maplibre-search-box - 添加一个控件用于使用Stadia Maps搜索地点;
  • maptiler-geocoding-control - 添加一个地理编码控件用于使用MapTiler API搜索地点; 文档

地图渲染插件

  • 💙 MapLibre GL Leaflet - 一个在Leaflet中渲染MapLibre样式的插件;
  • deck.gl - 添加高级WebGL可视化图层;
  • flowmap.blue - 从Google Sheets上发布的电子表格渲染地理流图可视化;
  • H3J / H3T - 轻量级H3数据格式,用于客户端几何生成和使用MapLibre GL JS渲染;
  • L7-maplibre-gl - 为maplibre-gl添加大规模WebGL驱动的地理空间数据可视化框架; 演示
  • mapbox-gl-language - 自动将地图本地化为用户的语言;
  • mapbox-gl-rtl-text - 添加从右到左文本支持;
  • maplibre-gl-complex-text - 添加对一些复杂文字的支持,包括高棉文和天城文;
  • mapbox-gl-traffic - 在地图上隐藏和显示交通图层,带可选的切换按钮;
  • maplibre-contour - 在MapLibre GL JS中从栅格DEM瓦片渲染等高线;
  • maplibre-gl-dates – 按日期过滤支持时间的地图; 为OpenHistoricalMap矢量瓦片优化;
  • maplibre-gl-vector-text-protocol - 使用addProtocol功能支持CSV、TSV、Topojson、KML、GPX和TCX格式;
  • geogrid-maplibre-gl - 渲染可自定义的经纬网格;
  • maplibre-gleo - 使用"gleo" WebGL地图渲染库添加符号;
  • maplibre-contourmap - 在MapLibre GL JS中从矢量源渲染等高线; 演示

图层类型插件

  • Allmaps Maplibre - 一个用于显示地理参考IIIF图像的包,通过加载地理参考注释并使用WebGL将图像转换并覆盖到其正确的地理位置;
  • mapbox-gl-arcgis-featureserver - 一个用于从ArcGIS FeatureServer或MapServer检索要素的库; 此库进行分块请求而不是简单地请求每个要素;
  • mapbox-gl-esri-sources - 一个使MapLibre GL JS中更容易使用Esri服务的库; 支持Esri地图服务(动态和分块)、Esri矢量瓦片服务和Esri矢量底图样式;
  • mapbox-gl-flatgeobuf - 一个使用分块方法从FlatGeobuf文件检索要素的库; 与MapLibre GL JS和Mapbox GL JS兼容;
  • mapbox-gl-ogc-feature-collection - 一个小型包,用于从OGC Feature API端点请求geojson以在MapBox/MapLibre中提供瓦片;
  • maplibre-cog-protocol - 自定义协议,用于在Maplibre GL JS中加载云优化地理TIFF(COG);
  • maplibre-google-maps - 一个将Google地图作为栅格图层集成到MapLibre GL JS中的库; 它使用新的Google Map Tiles API;
  • ol-maplibre-layer - 将MapLibre GL JS地图作为OpenLayers图层渲染;
  • PMTiles for MapLibre - 一个使用addProtocol读取PMTiles的库; 一种用于托管瓦片集的单文件格式,无需服务器或API,只需S3或其他存储提供商;

实用工具库

  • expression-jamsession - 将Mapbox Studio公式转换为表达式;
  • mapbox-choropleth - 从CSV源和几何源创建分层设色图;
  • mapbox-gl-layer-groups - 管理图层组;
  • mapbox-gl-sync-move - 同步多个地图之间的移动;
  • mapbox-gl-utils - 使用语法糖和便捷函数管理图层、源和属性;
  • maplibregl-mapbox-request-transformer - 此库提供了一个请求转换函数,使在MapLibreGL中使用MapboxGL样式成为可能;
  • maplibregl-theme - 为您的MapLibre GL Web应用提供自定义主题; 主题定制器
  • simplespec-to-gl-style - 将带有simplestyle-spec的GeoJSON样式转换为MapLibre GL样式;
  • turf - 提供高级地理空间分析工具;
  • Maperture - 一个用于比较网络地图样式的Web应用程序;
  • geojson-map-fit-mercator - 为在Mapbox GL或MapLibre GL视口中拟合一组GeoJSON特性找到最佳方位角、缩放和中心点; 演示

开发工具插件

  • mapbox-gl-framerate - 一个帧率控制,用于评估地图渲染性能;
  • mapbox-gl-fps - 一个每秒帧数GUI控制和测量器,带统计报告输出;
  • mapgrab - 一个用于使用流行测试框架(如Playwright、Cypress和Selenium)创建端到端(e2e)地图测试的工具;
  • maplibre-gl-inspect - 添加一个检查控件,用于查看矢量源特性和属性;

框架集成

Angular

  • 💙 ngx-maplibre-gl - Angular绑定,演示托管在maplibre.org/ngx-maplibre-gl/demo

Astro

  • maps-withastro - 将Leaflet和MapLibre地图直接引入Astro;

Echarts

  • echartslayer - 提供echarts集成;

Elm

  • elm-mapbox - 提供Elm集成;

Ember

  • ember-mapbox-gl - 提供Ember集成;

Jekyll

  • jekyll-maplibre - 提供Jekyll集成(插件);

React

  • react-map-gl - 用于mapbox-gl、maplibre-gl或兼容库的React组件套件;
  • react-map-components-maplibre - 用于声明式GIS应用程序开发的React组件框架,在showcase和docs中有演示;
  • maplibre-react-components - 用于React的轻量级MapLibre绑定;
  • react-mapbox-gl - 提供React集成;

Svelte

  • sveltekit-maplibre-boilerplate - 一个预配置的模板仓库,用于在svelte/sveltekit中开发MapLibre应用程序;
  • svelte-maplibre - 提供Svelte集成;
  • svelte-maplibre-components - 一组与svelte/sveltekit集成的maplibre插件; 该仓库由各种有用的插件组成,如导出插件、图例插件、测量插件、属性表插件、导览插件等;
  • svelte-maplibre-gl - Svelte(v5)组件包装MapLibre GL JS,通过熟悉的API提供GL JS的声明式处理;

VueJS

  • @indoorequal/vue-maplibre-gl - 用于maplibre-gl-js的Vue 3插件;
  • LibreGL - 一个功能强大的Vue库,用于Maplibre,具有直观的API和高度可定制的组件集合;

Webtoolkit

  • wtMapbox - 提供Webtoolkit集成;

Vanilla JS

  • plotly.js - 在javascript中使用MapLibre GL JS创建分析性地理空间图形;
Prev
介绍
Next
样式规范