Leaflet
Leaflet是一个開源的 JavaScript 庫,用佇咧構建 Web 地圖應用。頭一擺發佈佇二空一一年,並且二空一二年七月三十號進行頭一擺更新,發佈矣 leaflet 空七四。伊支援大多數徙振動佮桌面平台,支援 HTML 五和 CSS 三。其使用者包括 FourSquare、Pinterest 和 Flickr。
Leaflet 允准講無 GIS 背景的開發人員真容易顯示代管佇咧公共侍服器頂懸的厝瓦 Web 地圖,並且會當疊圖層。伊會當對 GeoJSON 檔案當中載入地理要素的資料,設定的形式,閣建立互動式的圖層,如點擊的時陣會彈出式視窗的標記。
烏克蘭人 Vladimir Agafonkin 開發矣 Leaflet,伊佇二空一三年加入了 Mapbox。 leaflet 的上新版本為 Leaflet 一孵九,佇二空二二年九月二一發布。
Leaflet 會當佇所有主要的桌面佮行動平台頂做工課,而且使用誠濟外掛程式進行擴充,原始碼美觀易捌,簡單高效。四十二 KB 輕量化的 Leaflet JS 庫提供了真大多數的開發者所需要的地圖特性。關於著版本更新問題,Leaflet 一爿九版本欲為了後二石銀系列等等重要版本升級𫝏定基礎,毋過二允空版本就目前來講猶需要時間除毋著。官方更新紀錄檔描述,未來會計畫放棄支援 IE 瀏覽器;更新 javascript 版本相容,使用 ECMAScript 標準版本以期待使用更加功能強大的 javascript 特性;模組標準化,未來干焦使用單一个模組化標準,降低分散式代碼的複雜性;取消矣「L」全域變數,以期為著閣較好的使用 tree-shaking 消除無用代碼。一 . x 版本系列會更加專注重要錯誤的修復猶閣有過去版本的維護。
使用
Leaflet 的典型用法是將 Leaflet 的「map」元素縖結到 HTML 元素(比如講 div)上。然後共圖層佮標記添加到 map 元素內底。
Leaflet 支援非球面麥卡托投影顯示地圖。Leaflet 庫本身會使通過變數 ` L ` 存取。
功能
Leaflet 原生支援 Web 地圖服務(WMS)層、GeoJSON 層、向量層佮瓦鉼層。通過外掛程式支援誠濟其他類型的圖層。
佮其他 Web 地圖庫仝款,由 Leaflet 實現的基本顯示模型是一个基本地圖,加上零个抑是半透明崁,頂懸顯示零个抑是濟項向量物件。
Leaflet 有一寡特別的特別的製化功能,譬論講自訂地圖投影、基於圖像佮 HTML 的標記、和 CSS 三彈出式視窗佮控制項等等。
元素
主要的 Leaflet 物件類型有:
- 柵格類型(TileLayer 佮 ImageOverlay)
- 向量類型(Path、Polygon,以及特定的類型,如 Circle)
- 群組類型(LayerGroup、FeatureGroup 佮 GeoJSON)
- 控制項(Zoom、Layers 等)
猶閣有各種工具類,譬如講用管理投影、變換和與 DOM 互動的介面。
GIS 格式支援情形
Leaflet 核心支援少數 GIS 標準格式,其他外掛程式來支援。
瀏覽器支援
Leaflet 空七支援 Chrome、Firefox、Safari 五 +、Opera 十二 + 和 IE 七鼗十一。
上新發布的版本 Leaflet 一孵九 . 二發生了少少的變化,佇咧桌面的部份支援 Chrome、firefox、Safari 五 +、Opera 十二 + IE 九嬸十一佮 Edge。咧行動端是支援 Safari for iOS 七 +、Chrome for mobile、 Firefox for mobile、和 IE 十 + for Win 八 devices。
佮其他庫的較
Leaflet 佮 OpenLayers 中間會當進行較,因為兩个攏是開源的嘛,而且客戶捀攏干焦有 JavaScript 庫。佮 OpenLayers 的兩百三十 , 零行相比,規个庫愛細甲濟,大約有七 , 零行代碼(節甲二空一五年)。 佮 OpenLayers 相比並,伊的代碼占用空間閣較細(大約是一百二十三 KB 比四百二十三 KB), 部份的原因是伊使用模組化結構。Leaflet 的代碼庫更新,用著矣 JavaScript 的新特性,以及 HTML 五和 CSS 三。閣有,Leaflet 欠一寡 OpenLayers 原生支援的特性,比如講 Web 愛素服務(WFS), 以及 EPSG : 四千三百二十六分之三千八百五十七 / 三千三百九十五以外的各種投影方式。
伊閣會當佮私有的、封閉原始碼的 Google 地圖 API(二空空五年推出)和 Bing 地圖 API 比較起來,後兩項攏包括一个重要的侍服器捀組件,提供位址編碼、路徑規劃、搜揣等服務,並佮 Google 地球等等的功能整合。Google 地圖 API 提供速度佮簡單性,但是毋是活跳跳的,干焦會當用佇存取 Google 地圖服務。猶毋過,Google API 的新 DataLayer 部份確實允准顯示外部資料來源。
Leaflet 的特點
Leaflet 是一款輕量級的啦 JavaScript 庫,使用者只需要將包括 Leaflet 的 JavaScript 和 CSS 檔案添加到專案中整合就會當隨時進行使用。 非常有特點的是,Leaflet 的定位是行動裝置、𪜶拚佇行動裝置提供良好的使用性的互動式地圖。Leaflet 網站首頁就足明確的聲明矣,𪜶的開發的這个 JavaScript 庫是一个關注行動端並且對行動端使用者非常友好的,關於互動式地圖的 JavaScript 庫,並且這个庫是完全開源的。
Leaflet 掛程式
因為乎 Leaflet 本身是一款十分輕量化的 JavaScript 庫,所以伊干焦一組核心功能的實現,毋過咱會當通過使用第三方外掛程式的方式來拓展 Leaflet 的其他功能,你會當去 Leaflet 外掛程式內底揣著並下載遮的外掛程式,遮的外掛程式有關於實現地圖互動,動態資料載入,實現資料視覺化等各種功能。
外部連結
- openstreetmap : leaflet
- Leaflet 官網
- Leaflet 教程