前言:如何做一個(gè)屬于自己的地圖

首先我們首先定義什么叫做自己的地圖。

我認(rèn)為就是從數(shù)據(jù)到發(fā)布都可以自己控制或者說是可以發(fā)布到內(nèi)網(wǎng)址晕。只是有幾點(diǎn)是可控的致讥。

一仅仆、數(shù)據(jù)屬于自己的

二、數(shù)據(jù)可以自己編輯

三垢袱、地圖可以自己發(fā)布

四墓拜、從整體流程到發(fā)布都可以自己把控。

那么我從整體開發(fā)流程盡量簡化一個(gè)文檔请契。有不完善的地方清大家指教咳榜。

一、數(shù)據(jù)

從數(shù)據(jù)來說姚糊,對(duì)于一張地圖來說最重要的就是數(shù)據(jù)贿衍。目前國內(nèi)的數(shù)據(jù)采集都比較麻煩甚至涉密。

政府部門和官方機(jī)構(gòu):中國的交通運(yùn)輸部門救恨、地方政府或城市規(guī)劃部門可能會(huì)提供公開的路網(wǎng)數(shù)據(jù)贸辈。您可以通過官方網(wǎng)站、數(shù)據(jù)開放平臺(tái)或相關(guān)部門的數(shù)據(jù)發(fā)布渠道來獲取這些數(shù)據(jù)肠槽。

開放數(shù)據(jù)平臺(tái):一些開放數(shù)據(jù)平臺(tái)可能會(huì)提供免費(fèi)的中國路網(wǎng)數(shù)據(jù)擎淤,例如國家數(shù)據(jù)共享服務(wù)平臺(tái)、城市數(shù)據(jù)開放平臺(tái)等秸仙。您可以在這些平臺(tái)上搜索并下載所需的路網(wǎng)數(shù)據(jù)嘴拢。

第三方地圖服務(wù)提供商:一些第三方地圖服務(wù)提供商(如百度地圖、高德地圖)可能提供有關(guān)中國路網(wǎng)的數(shù)據(jù)API寂纪,可以通過這些API獲取路網(wǎng)數(shù)據(jù)席吴。您可能需要了解其使用條款和許可要求。

我們講點(diǎn)現(xiàn)實(shí)的捞蛋,其實(shí)中國大部分城市數(shù)據(jù)只有兩個(gè)渠道孝冒。因?yàn)橛鲆姷拇蟛糠终掷锏臄?shù)據(jù)質(zhì)量不高,其次很難獲取并且不同城市的數(shù)據(jù)格式可能完全不同拟杉。

一庄涡、是圖商 但是必須得有項(xiàng)目的合規(guī)性的證明 在一個(gè)需要幾十W左右 成本比較高

二、開發(fā)數(shù)據(jù)平臺(tái) 基本比較全的就是openstreetmap(osm)的搬设。

這里我介紹一個(gè)下載osm數(shù)據(jù)的方案 穴店。就是從科力地圖的官網(wǎng)下載 。

菠蘿頭:OpenStreetMap(OSM)數(shù)據(jù)下載0 贊同 · 0 評(píng)論文章

科力地圖?http://map.ahkeli.com/

省份/城市/縣城 級(jí)別的數(shù)據(jù)最佳的下載方案拿穴。本質(zhì)上是基于overpass網(wǎng)站進(jìn)行下載泣洞。但是這個(gè)網(wǎng)站要進(jìn)行一些代碼的拼接很麻煩。所以為了方面用戶下載默色,科力地圖優(yōu)化了整個(gè)下載流程斜棚。不需要進(jìn)行一些代碼的拼接。

科力地圖有個(gè)數(shù)據(jù)下載頁面。

通過這個(gè)搜索欄 可以進(jìn)行城市名稱的搜索弟蚀。

在這里點(diǎn)擊下載就好了蚤霞。這里進(jìn)行點(diǎn)擊下載就可以進(jìn)行省份/城市級(jí)別數(shù)據(jù)的下載了。因?yàn)檫@個(gè)數(shù)據(jù)下載源頭是overpass網(wǎng)站义钉。估計(jì)是動(dòng)態(tài)切分的原理昧绣。所以下載速度不會(huì)很快。但是對(duì)于一些小城市或者縣城來說是最佳選擇捶闸。 因?yàn)榇蟛糠謹(jǐn)?shù)據(jù)下載網(wǎng)站不會(huì)切分的特別細(xì)夜畴。所以導(dǎo)致一些縣城的數(shù)據(jù)都得自己基于別的工具手動(dòng)進(jìn)行切分。

二删壮、空間數(shù)據(jù)庫

數(shù)據(jù)肯定是需要落地的贪绘。常見的關(guān)系型數(shù)據(jù)庫大概就是3種 Mysql、oracle央碟、postgres 税灌。GIS行業(yè)內(nèi)

最常用的反倒是oracle和postgres 。為啥不用Mysql呢亿虽? 肯定是因?yàn)閙ysql 對(duì)空間字段和空間算法支持的不夠好了菱涤?

大數(shù)據(jù)部分的數(shù)據(jù)庫也有部分 ,類似hbase,mongdb等 也會(huì)有部分空間函數(shù)洛勉。但是對(duì)大部分用戶來說沒有那么多數(shù)據(jù)量粘秆。

這里主要講一下postgres和Postgis 。postgis是postgres數(shù)據(jù)庫的一個(gè)插件收毫。postgres數(shù)據(jù)庫最大的優(yōu)勢(shì)也是可以加載各種插件來擴(kuò)充自己的能力攻走。PostGIS通過向PostgreSQL添加對(duì)空間數(shù)據(jù)類型空間索引空間函數(shù)的支持此再,將PostgreSQL數(shù)據(jù)庫管理系統(tǒng)轉(zhuǎn)換為空間數(shù)據(jù)庫昔搂。

PostGIS是一個(gè)用于存儲(chǔ)和處理地理空間數(shù)據(jù)的空間數(shù)據(jù)庫擴(kuò)展,而Oracle Spatial和SQL Server(2008及更高版本)也提供了類似的功能引润。將普通數(shù)據(jù)庫轉(zhuǎn)變?yōu)榭臻g數(shù)據(jù)庫意味著擴(kuò)展數(shù)據(jù)庫的功能,使其能夠有效地存儲(chǔ)痒玩、查詢和分析地理空間數(shù)據(jù)淳附。

在空間數(shù)據(jù)庫中,引入了特定的數(shù)據(jù)類型蠢古、索引和函數(shù)奴曙,以支持空間對(duì)象的存儲(chǔ)和操作。這些要素的作用如下:

數(shù)據(jù)類型:空間數(shù)據(jù)庫引入了專門的數(shù)據(jù)類型草讶,如點(diǎn)(point)洽糟、線(line)和面(polygon),用于表示地理空間對(duì)象。這些數(shù)據(jù)類型允許存儲(chǔ)和處理地理坐標(biāo)信息坤溃,并提供了相應(yīng)的操作和計(jì)算功能拍霜。

索引:空間數(shù)據(jù)庫使用多維度空間索引,以提高對(duì)空間數(shù)據(jù)的查詢性能薪介。這些索引結(jié)構(gòu)可以有效地處理空間關(guān)系查詢祠饺,如鄰近搜索、范圍查詢和交叉查詢汁政,以快速定位和檢索空間對(duì)象道偷。

函數(shù):空間數(shù)據(jù)庫提供了一系列內(nèi)置的空間函數(shù),可以執(zhí)行各種空間操作和分析记劈。這些函數(shù)允許進(jìn)行空間屬性查詢(如計(jì)算面積勺鸦、長度),以及空間關(guān)系查詢(如判斷兩個(gè)對(duì)象的相交性目木、包含關(guān)系等)换途,從而支持復(fù)雜的空間分析和查詢需求。

通過結(jié)合這些要素嘶窄,空間數(shù)據(jù)庫能夠有效地存儲(chǔ)和處理地理空間數(shù)據(jù)怀跛,使其具備空間查詢和分析的能力。這為地理信息系統(tǒng)(GIS)柄冲、位置分析和地理空間應(yīng)用提供了強(qiáng)大的數(shù)據(jù)管理和處理功能

有了空間數(shù)據(jù)庫之后吻谋,就不再需要專門的GIS數(shù)據(jù)引擎(GIS Data Engine)去處理和操縱空間數(shù)據(jù)了,應(yīng)用程序只需要通過SQL語言就能輕松地操縱空間數(shù)據(jù)现横。

三漓拾、操作空間數(shù)據(jù)

空間數(shù)據(jù)的特質(zhì)就是這類數(shù)據(jù)可以理解為形狀,也就是人類很難直接操作數(shù)據(jù)戒祠。因?yàn)槿祟惡茈y通過經(jīng)緯度還原成圖形骇两。我舉例一下

wkt格式

LINESTRING (116.397128 39.916527, 116.397800 39.916835, 116.398457 39.917180, 116.399123 39.917542)

geojson格式

{

? "type": "Feature",

? "properties": {},

? "geometry": {

? ? "type": "LineString",

? ? "coordinates": [

? ? ? [116.397128, 39.916527],

? ? ? [116.397800, 39.916835],

? ? ? [116.398457, 39.917180],

? ? ? [116.399123, 39.917542]

? ? ]

? }

}

所以操作空間數(shù)據(jù)必須得使用工具。

這里介紹幾種工具

空間數(shù)據(jù)庫工具 pgadmin4 和navicat

推薦操作空間數(shù)據(jù)使用pgadmin4 這個(gè)是專門為postgres數(shù)據(jù)庫準(zhǔn)備的數(shù)據(jù)庫操作工具姜盈。并且可以對(duì)查詢結(jié)果進(jìn)行地圖的查看 上面的是示意圖也是通過這個(gè)工具出來的低千。提示一下設(shè)置坐標(biāo)系為4326.

Navicat 就不做多介紹了 這個(gè)工具最大的優(yōu)勢(shì)可以鏈接多種數(shù)據(jù)庫比如mysql、oracle馏颂、postgres

桌面gis工具 arcgis示血、qigs、supermap救拉、josm

最常見的就是arcgis這是毋庸置疑的第一难审。這個(gè)軟件也是大學(xué)里必須得學(xué)的軟件。但是這個(gè)軟件是收費(fèi)的亿絮,但是中國嘛告喊。這類軟件一定有中國特質(zhì)版本 大家自己百度吧麸拄。

qgis和supermap的桌面端 也是都可以用的 。 qgis是開源版本的桌面端的軟件黔姜,比較輕量級(jí)但是也十分好用拢切。

supermap也就是超圖 是中國版本可以對(duì)標(biāo)arcgis的版本。但是也是收費(fèi)的哦5氐怼J颉!

地圖慧3.0e.dituhui.com/editor

josm 就比較特殊了帮毁。這個(gè)是專門為osm數(shù)據(jù)準(zhǔn)備的編輯工具实苞。

網(wǎng)頁端gis工具 超圖網(wǎng)站 和osm官網(wǎng) 但是osm官網(wǎng)可能不好打開。

SuperMap Online-全面的在線GIS數(shù)據(jù)與應(yīng)用平臺(tái)www.supermapol.com/

osm官網(wǎng)雖然可以在線編輯烈疚,但是都是基于所有共享的數(shù)據(jù)黔牵。也就是你編輯的數(shù)據(jù)所有osm數(shù)據(jù)的使用者都可以共享。如果你對(duì)數(shù)據(jù)私密性要求的很高爷肝。千萬別用osm官網(wǎng)編輯數(shù)據(jù)猾浦。并且我個(gè)人不太了解你實(shí)時(shí)編輯的數(shù)據(jù)是否下載的時(shí)候馬上能用。是否有審核的流程和時(shí)間灯抛。

osm官網(wǎng)(openstreetmap)www.openstreetmap.org/#map=6/18.573/118.323

還有一個(gè)專門目前做交通為主的在線地圖編輯網(wǎng)站金赦。科力地圖

科力地圖(多人在線編輯地圖)map.ahkeli.com/

科力地圖的核心是可以將地圖數(shù)據(jù)進(jìn)行在線下載并且導(dǎo)入平臺(tái)。

1.科力地圖擁有多人編輯的能力对嚼,桌面端的應(yīng)用沒有辦法應(yīng)對(duì)大型對(duì)周期要求比較緊的項(xiàng)目夹抗。

2.科力地圖提供了一套交通路網(wǎng)架構(gòu),可以直接讓您從數(shù)據(jù)修改到項(xiàng)目部署一條龍支持纵竖。

3.科力地圖提供了一套渲染架構(gòu)漠烧,您直接可以從這個(gè)網(wǎng)站下載數(shù)據(jù)直接進(jìn)行g(shù)eoserver的渲染。

4.科力地圖提供了多源數(shù)據(jù)綁定:

比如您從圖商那拿到了數(shù)據(jù)靡砌,但是數(shù)據(jù)質(zhì)量不高想修改部分?jǐn)?shù)據(jù)但是圖商沒辦法定制化修改已脓。

比如你從各種廠商拿到不同的數(shù)據(jù)(路況、設(shè)備等)通殃,但是最后的項(xiàng)目想多源數(shù)據(jù)融合或者關(guān)聯(lián)的辦法度液。

總之關(guān)于路網(wǎng)的絕大部份解決方案我們都可以提供!;唷堕担! 歡迎您找我們交流!F照宝!

我們的未來也在高精地圖 數(shù)字孿生等方向I呤堋句葵! 您有定制化需求也可以找我們交流。

四、加載使用空間數(shù)據(jù)

如何加載或者使用數(shù)據(jù)呢乍丈?如果你想在你的網(wǎng)頁里面使用地圖或者說是空間數(shù)據(jù)剂碴。那么首先得有一個(gè)地圖框架,國內(nèi)大家比較熟悉的是高德和百度轻专。

其實(shí)使用范圍更大的前端地圖框架有兩種 openlayers 和leaflet忆矛。前端可以通過這兩個(gè)框架來進(jìn)行圖層的加載。

Leaflet是一個(gè)輕量級(jí)的開源JavaScript庫请垛,專注于提供簡單催训、靈活和易于上手的地圖功能。它具有良好的文檔和活躍的社區(qū)支持宗收,適用于各種規(guī)模的項(xiàng)目漫拭。Leaflet支持多種地圖圖層、標(biāo)記混稽、矢量圖形采驻、交互操作等功能。它還提供了豐富的地圖樣式和插件匈勋,可以輕松擴(kuò)展和定制地圖應(yīng)用礼旅。

OpenLayers是另一個(gè)功能強(qiáng)大的開源地圖框架,提供了廣泛的地圖功能和高度可定制化的選項(xiàng)洽洁。OpenLayers支持多種地圖投影痘系、圖層類型和數(shù)據(jù)源,包括瓦片地圖诡挂、矢量數(shù)據(jù)碎浇、WMS/WMTS服務(wù)等。它具有強(qiáng)大的地圖渲染和交互能力璃俗,支持地圖縮放奴璃、平移、標(biāo)記城豁、查詢苟穆、繪制等操作。OpenLayers還提供了豐富的API和模塊化的架構(gòu)唱星,使開發(fā)者能夠構(gòu)建復(fù)雜的地圖應(yīng)用雳旅。

Leaflet和OpenLayers在使用方式和理念上有一些區(qū)別。Leaflet注重簡潔和易用性间聊,適合快速搭建基本的地圖應(yīng)用攒盈。OpenLayers則更加全面和功能豐富,適合需要更高級(jí)功能和復(fù)雜場(chǎng)景的項(xiàng)目哎榴。選擇使用哪個(gè)框架取決于項(xiàng)目需求型豁、開發(fā)經(jīng)驗(yàn)和個(gè)人偏好僵蛛。

其實(shí)從地圖框架來說數(shù)據(jù)來自于兩個(gè)部分,

一迎变、地圖底圖

二充尉、空間數(shù)據(jù)格式加載(geojson、wkt)類似的空間格式衣形。

第一個(gè)大部分?jǐn)?shù)據(jù)是必須得通過地圖圖層加載的驼侠。第一個(gè)是減少客戶端的數(shù)據(jù)處理,因?yàn)榇蟛糠謭D層對(duì)于地圖框架來說都是圖片的加載谆吴。

第二個(gè)就是空間數(shù)據(jù)的加載倒源,也就是可以進(jìn)行用戶交互的部分。使開發(fā)者能夠構(gòu)建復(fù)雜的地圖應(yīng)用句狼。

這個(gè)部分也就是用戶如何構(gòu)建自己的地圖應(yīng)用的部分相速。可以根據(jù)自己的應(yīng)用的進(jìn)行不同邏輯的開發(fā)鲜锚。下圖就是我們開發(fā)的一個(gè)地圖平臺(tái)突诬。

如何發(fā)布自己的地圖圖層呢 。 這個(gè)部分我在之后的文章給大家講述芜繁。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末旺隙,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子骏令,更是在濱河造成了極大的恐慌蔬捷,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件榔袋,死亡現(xiàn)場(chǎng)離奇詭異周拐,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)凰兑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門妥粟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人吏够,你說我怎么就攤上這事勾给。” “怎么了锅知?”我有些...
    開封第一講書人閱讀 152,702評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵播急,是天一觀的道長。 經(jīng)常有香客問我售睹,道長桩警,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評(píng)論 1 279
  • 正文 為了忘掉前任昌妹,我火速辦了婚禮捶枢,結(jié)果婚禮上沉噩,老公的妹妹穿的比我還像新娘。我一直安慰自己柱蟀,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,263評(píng)論 5 371
  • 文/花漫 我一把揭開白布蚜厉。 她就那樣靜靜地躺著长已,像睡著了一般。 火紅的嫁衣襯著肌膚如雪昼牛。 梳的紋絲不亂的頭發(fā)上术瓮,一...
    開封第一講書人閱讀 49,036評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音贰健,去河邊找鬼胞四。 笑死,一個(gè)胖子當(dāng)著我的面吹牛伶椿,可吹牛的內(nèi)容都是我干的辜伟。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼脊另,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼导狡!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起偎痛,我...
    開封第一講書人閱讀 36,979評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤旱捧,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后踩麦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體枚赡,經(jīng)...
    沈念sama閱讀 43,469評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,938評(píng)論 2 323
  • 正文 我和宋清朗相戀三年谓谦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了贫橙。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,059評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡反粥,死狀恐怖料皇,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情星压,我是刑警寧澤践剂,帶...
    沈念sama閱讀 33,703評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站娜膘,受9級(jí)特大地震影響逊脯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜竣贪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,257評(píng)論 3 307
  • 文/蒙蒙 一军洼、第九天 我趴在偏房一處隱蔽的房頂上張望巩螃。 院中可真熱鬧,春花似錦匕争、人聲如沸避乏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拍皮。三九已至,卻和暖如春跑杭,著一層夾襖步出監(jiān)牢的瞬間铆帽,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工德谅, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留爹橱,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,501評(píng)論 2 354
  • 正文 我出身青樓窄做,卻偏偏與公主長得像愧驱,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子椭盏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,792評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容