標籤:ges 項目 雲端服務 map try 行資料 excel 群集 upload
文章著作權由作者李曉暉和部落格園共有,若轉載請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/
1.背景介紹
一般WebGIS項目中,前端展示資料的流程基本是先做資料入庫、服務發布、然後前端調用展示。假設使用者沒有基本的GIS背景,需要將本地的excel或CSV等檔案快速在地圖上進行展示,此需求該如何解決?
目前市場上針對解決這種需求的產品已陸續出現,比如mapbox的studio,esri的portal,超圖的地圖慧以及由超圖原專案經理離職後創辦的地圖無憂等產品。這類產品一般都以雲端服務的概念來封裝,提供本地檔案的Web製圖,相關空間分析,資料的編輯,共用等。這裡,我以公司某項目來談談個人對此類需求的設計和實現。
2.產品設計
研究市場上成熟的產品會發現二八定律是廣泛存在的,比如esri的portal中提供了大量的空間分析功能,但是這些功能能夠被使用者使用上的機率非常低,僅限於賣產品時客戶經理的技能秀狀態。抽出普適的功能,定位使用的使用者,結合公司的需求,是我最開始設計時的原則。
這裡首先定義使用者:公司研發(目標-資料整合、快速開發),工程同事(某些需求可獨立解決),使用者使用(解決使用者簡單需求)。
根據以上三個原則,提出了這樣的產品功能構想:
a.本地檔案快速展示(研發、工程、客戶)。
b.本地檔案製圖(研發、工程、客戶)。
c.基本空間分析(研發、工程、客戶)。
d.資料編輯(研發、工程、客戶)。
e.資料共用
針對研發:提供資料層面對接、服務層面對接、前端介面對接。
針對工程:提供服務發布功能。
針對客戶:提供前端對分享資料的查看。
f.資料許可權
針對工程、客戶:可配置資料查看許可權。
3.產品架構設計
以模組化為核心,首先將地圖操作和製圖業務進行分裂,構建出兩個大模組:
在portal中對各功能模組是否能添加進行組態管理:
4.本機資料展示的設計和實現
本機資料展示主要針對本地的CSV和本地Excel資料,資料中需要包含座標欄位(X、Y),通過portal添加至地圖上進行快速展示:
5.Web製圖的設計和實現5.1簡單渲染
簡單渲染是指使用者可以選擇渲染的填充色、填充透明度、邊框色、邊框透明度、以及選擇是否用表徵圖(表徵圖可上傳選擇)展示:
5.2分類渲染
分類渲染是指使用者可以選中分類的欄位,然後對欄位對應的不同閾值進行不同渲染展示:
6.空間分析的設計和實現6.1多維分析
多維分析中提供熱區展現、群集兩種維度,並且各參數可以選擇控制:
6.2緩衝分析
提供針對上傳資料的點、線、面的緩衝分析功能:
7.資料管理7.1資料關鍵字查詢
選中查詢欄位,輸入查詢關鍵字後便可以搜尋出資料中符合要求的結果,點擊結果面板後可以在地圖上定位到該要素:
7.2資料編輯
針對資料提供增加、修改、刪除、另存功能,其中另存功能能將修改後的資料匯出成本地的CSV檔案:
8.資料共用8.1設計
選擇用PostGIS來儲存上傳資料,主要考慮都後期可以使用geoserver直接將上傳的資料當做圖層進行發布。然後設計了三張表來進行資料的中繼資料管理,分別是tc_user_upload_data,tc_user_upload_data_field,tc_user_upload_data_style表,這三張表中,第一個是儲存上傳的資料對應的資料表、樣式表、上傳人員,第二張表對應的各資料所擁有的欄位,第三張表格儲存體的是資料對應的樣式檔案。最後,每上傳一個資料,除了填充這三張中繼資料表外,還為該資料產生一個資料存放區表,表中包含geom欄位以ST_Geometry格式來儲存,為以後和地理伺服器對接。
8.2實現
點擊上傳按鈕,即將資料上傳至PG庫中:
8.3geoserver發布
利用geoserver發布:
或者利用公司整合了發布工具的UDIG配圖發布:
Geoserver中預覽:
9.許可權配置
配置各崗位對服務圖層的許可權:
圖層樹中對圖層瀏覽:
10.擴充設計
a.增加前端以配置樣式讀取上傳資料的介面,為研發前端調用。
b.針對研發特殊需求,提供資料層面對接方案。
c.增加更多擴充GIS功能,比如路徑糾正、等值線、熱點圖等。
d.擴充支援更多的本地檔案格式。
e.增加地圖底圖樣式可切換配置介面。將地圖底圖更換成向量切圖,對向量切圖以YAML格式進行樣式配置。
-----歡迎轉載,但保留著作權,請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/
以項目談WebGIS中Web製圖的設計和實現