1. 概述
1.1 版本
報表伺服器版本 |
---|
11.0 |
1.2 問題描述
FineReport 內建地圖,在使用「區域地圖」時,若設定顯示「區域名」標籤,其顯示的位置預設是按照每個省份的省會城市來顯示的。如下圖所示:
但是會有使用者希望區域名能夠在每個區域置中顯示,例如百度地圖顯示的方式:
1.3 解決思路
區域地圖顯示標籤的位置是由「地圖配置」中區域的中心點決定的,直接修改中心點的經緯度,就可以改變標籤顯示的位置了。
2. 範例
2.1 準備資料
點選設計器左上角「檔案>建立普通報表」,建立資料集 ds1,資料庫查詢語句如下:SELECT * FROM 地圖。
2.2 插入地圖
先合併一片儲存格區域,點選上方工具欄插入圖表按鈕,插入「地圖>區域地圖」。如下圖所示:
2.3 設計圖表
選中圖表,點選右側屬性面板「儲存格元素」,可設定圖表的各個屬性:類型、資料、樣式、特效。
2.3.1 設定圖層
選中圖表所在儲存格,點選右側「儲存格元素>類型」,選擇地圖邊框為「中國」,GIS 圖層為「標準>無」。如下圖所示:
2.3.2 綁定資料
選擇「資料」,綁定圖表資料如下圖所示:
2.3.3 設定圖表樣式
1)設定標籤
勾選「使用標籤」,選擇顯示內容為「通用>區域名」,字元自訂字體、大小、顏色。如下圖所示:
2)設定系列
設定地圖邊框(即邊框線)的顏色為灰色。如下圖所示:
本例有關地圖的設定到這裏就結束了。我們儲存圖表預覽一下,效果如下圖所示:
2.4 配置地圖中心點
1)點選菜單欄「伺服器>地圖配置」,登入數據決策系統「地圖配置介面」。
2)在地圖配置介面的「地理資訊」,選擇「區域」,再選中 world 下的「中國」,右側配置介面會出現高亮的中國區域地圖。點選區域時,彈出區域資訊,如下圖所示:
3)預設區域中心點是該區域省會城市的經緯度,我們可以透過百度地圖的 拾取座標系統 拾取自己想要的位置的經緯度,然後複製該座標經緯度。如下圖所示:
4)將複製的座標貼上到地圖配置中區域的「中心點」,並儲存該點,再點選「右上角」的儲存,最後「同步地理檔案」。如下圖所示:
同步地理檔案成功之後,在設計器重新預覽範本即可。
2.5 效果預覽
2.5.1 PC 端
重新預覽範本,可以看到「新疆」地區標籤的位置置中顯示了。如下圖所示:
2.5.2 行動端
App 端和 HTML5 端均支援,效果如下圖所示:
3. 範本下載
點選下載範本:地圖自訂標籤位置.cpt
注:範本下載後需按文檔所述方法修改區域中心點,才能看到標籤位置修改的效果。