反饋已提交

網絡繁忙

地圖鑽取與聯動

1. 概述

1.1 預期效果

  • 範本中包含地圖和表格,地圖可實現鑽取,表格中資料可以跟隨地圖鑽取省份進行聯動。

  • 範本中地圖與圖表進行聯動,點選地圖中某個城市,圖表展示該城市的資料。

如下圖所示:

1.2 實現思路

透過設定參數聯動「鑽取地圖」和其他組件,但聯動其他圖表時,由於地圖各層級資料需要先進行匯總處理,所以圖表需要使用儲存格資料源。

注:在普通報表中,要實現圖表傳參給儲存格,需藉助動態參數,詳情可參考文檔 鑽取的資料顯示在當前頁面  。

2. 範例一

本範例使用內建「地圖」資料表進行講解,其中「省份」欄位既包含了省又包含了市。若資料中的省市區分別是三個欄位,請查看範例二。

2.1 準備資料

1)點選設計器左上角「檔案>建立決策報表」,建立空白範本。在決策報表左下方新增資料庫查詢 ds1,SQL 查詢語句為:SELECT * FROM 地圖 。如下圖所示:

2)點選設計器左上角「範本>範本參數」,新增一個範本參數,雙擊參數名稱重新命名為 province。參數是用於地圖聯動時過濾資料的。

如下圖所示:

2.2 設計鑽取地圖

2.2.1 拖入鑽取地圖

將「鑽取地圖」拖入決策報表 body 中,如下圖所示:

2.2.2 地圖類型

編輯圖表,右側圖表屬性面板選擇「類型」,選擇「鑽取地圖>區域地圖」,地圖邊框選擇「中國」,GIS 圖層選擇「標準>素雅」,其餘設定預設即可。如下圖所示:

2.2.3 綁定資料

1)右側屬性面板選擇「資料>鑽取層級」,可設定鑽取層級屬性,詳情可參見:地圖鑽取 。這裏我們就使用預設設定即可,如下圖所示:

2)選擇「資料>資料」,選擇「各層級分別指定」。這裏根據讀取的地圖檔案,預設有 3 個層級,我們只需要設定「第1層」和「第2層」的資料即可。詳細設定如下:

  • 第1層:選擇 ds1 資料集中「pid」欄位,展示中國各個省的地圖資料

  • 第2層:選擇 ds1 資料集中「省份」欄位,展示鑽取的省份下各市的地圖資料

2.3 設計報表塊

2.3.1 拖入報表塊

拖曳一個報表塊到鑽取地圖的右邊,適當調整地圖與報表塊的尺寸比例。如下圖所示:

2.3.2 設計表格

表格根據點選的地圖省市一一對應顯示,並用柱形圖輔助展現資料,柱形圖資料來源於儲存格。

最終樣式如下圖所示:

1)設定標題

A1 儲存格插入公式:if(len($province) = 0 || $province = "中國", "全國資料", $province + "資料")

公式說明:作為表格的標題,可隨着 province 參數動態變化,且當 province 為空或等於「中國」時,標題為全國資料。

2)資料儲存格內容如下表:

儲存格
儲存格內容擴展方向父格說明
A3ds1.G(省份)不擴展左父格:預設 ,父格:預設A3 儲存格在新增過濾條件之後, B3 儲存格無法預設跟隨 A3 儲存格展示資料,故 B3 儲存格需要透過過濾條件跟隨 A3 儲存格,其他儲存格左父格需設定為 B3 儲存格
B3ds1.求和(銷售額)不擴展左父格:預設 ,父格:預設
C3

插入公式:

B3-D3-E3

不擴展左父格:B3 ,父格:預設
D3ds1.求和(營運費用)不擴展左父格:B3父格:預設
E3ds1.求和(稅費)不擴展左父格:B3父格:預設

3)為了與地圖產生聯動,A3 儲存格需要新增過濾條件:

雙擊 A3 儲存格,選擇「過濾」,新增過濾條件為:(欄名:省份)等於 F(x):if(len($province) = 0 || $province = "中國",ds1.select(省份, len(pid) = 0),$province)

條件說明:當 province 為空或等於「中國」時,獲取 ds1 資料集中滿足「pid」為空的「省份」資料,參數不為空時根據參數 province 顯示資料。

如下圖所示:

4)A3 儲存格設定過濾條件之後, B3 儲存格無法根據 A3 儲存格顯示資料,故設定過濾條件使其跟隨 A3 儲存格顯示資料。

雙擊 B3 儲存格,選擇「過濾」,新增過濾條件為:(欄名:省份) 等於儲存格 A3。

如下圖所示:

5)設定條件屬性

給 A3 儲存格設定一個「新值」條件屬性,實現當參數 province 為空或等於「中國」時,A3 儲存格顯示為字串「全國」。

條件屬性:新值為字串「全國」。條件為公式= len($province) = 0 || $province = "中國" 

步驟如下圖所示:

2.3.3 柱形圖綁定資料

柱形圖的資料來源選擇「儲存格資料」,分類名 =A3 ,表示點選的省份;系列名 =[B2:E2] ,表示 B2 儲存格到 E2 儲存格的資料;值 =[B3:E3],表示 B3 儲存格到 E3 儲存格的資料。詳情可參見文檔:圖表儲存格資料源

2.4 聯動設定

鑽取地圖和報表塊都已經設定好後,如果要實現 聯動,則需要設定互動屬性。在鑽取地圖中設定超連結的地方有兩處,分別是「鑽取」和「超連結」。如下圖所示:

  • 鑽取:針對鑽取地圖左上角的「鑽取目錄」設定超連結,點選目錄時即可聯動;若不設定,則點選目錄無聯動效果。

  • 超連結:針對地圖區域設定超連結,點選地圖區域時即可聯動。

2.4.1 鑽取目錄處新增超連結

編輯地圖,右側屬性面板選擇「特效>互動屬性」,「鑽取目錄」點選開啟,點選「新增連結」按鈕,選擇「當前表單物件」,選擇表格所在報表塊 report0,新增 province 參數,值選擇「區域名」。如下圖所示:

2.4.2 超連結處新增超連結

在下方「超連結」處新增一個一樣的超連結,如下圖所示:

注:AREA_NAME 是圖表自帶的參數,對應區域名稱。

2.5 效果預覽

2.5.1 PC 端

儲存範本,點選「PC 端預覽」,效果如 1.1 節預期效果所示。

2.5.2 行動端

App 端和 HTML5 端均支援,效果如下圖所示:

3. 範例二

本例針對資料表中省市區分別存放在不同欄位的情況。僅使用內建資料集作簡單示範。

3.1 準備資料

1)建立決策報表,建立內建資料集,將名稱修改為 ds1。範例資料如下圖所示:

2)參考範例一 2.1 節,設定範本參數 province 。

3.2 設計鑽取地圖

3.2.1 鑽取地圖綁定資料

綁定資料使用「各層級分別指定」。如下圖所示:

注:綁定第 3 層區域名為「區」後,注意下區域名是否正確匹配。詳情請參見文檔:地圖模糊匹配 。

3.2.2 設定超連結

參考 2.4 節設定超連結即可,這裏不再贅述。

3.3 設計報表塊

1)表格樣式如下圖所示:

2)每個儲存格的內容、設定項及作用如下表所示:

儲存格
內容擴展方向父格
說明
B1ds1.求和(銷量)不擴展左父格:預設 ,上父格:預設作用:在 province 參數為空或為「中國」時,作為 B3、C3 儲存格的「新值」顯示。所以設定完成後需要將第一列表格隱藏
C1ds1.求和(利潤)不擴展左父格:預設 ,父格:預設
A3插入公式 = if(len($province) = 0 || $province = "中國","全國",$province)不擴展左父格:預設 ,父格:預設
  • 因為範例資料的省市區不在同一個欄位,所以這裏不能使用過濾的方式獲取地區,而是透過公式獲取參數 province 的值

  • 當 province 為空或為「中國」時,儲存格值顯示為「全國」,參數不為空則根據參數顯示

B3ds1.求和(銷量)不擴展左父格:預設 ,父格:預設需要設定過濾條件和條件屬性
C3ds1.求和(銷量)不擴展左父格:B3 ,父格:預設需要設定條件屬性

3)雙擊 B3 儲存格,設定過濾條件為:

(欄名:省) 等於 $province or (欄名:市) 等於 $province or (欄名:區) 等於 $province 。 

如下圖所示:

4)設定條件屬性

B3 儲存格條件屬性如下圖所示,即當 province 為空或為「中國」時,B3 儲存格等於 B1 儲存格的值。

同理 C3 儲存格條件屬性如下圖所示,即當 province 為空或為「中國」時,C3 儲存格等於 C1 儲存格的值。

5)柱形圖綁定資料原理可參考 2.3.3 ,具體如下圖所示:

3.4 效果預覽

3.4.1 PC端

儲存報表,點選「PC端預覽」,效果如下圖所示:

3.4.2 行動端

App 端和 HTML5 端均支援,效果如下圖所示:

4. 範本下載

範例一:

點選下載範本:地图钻取与联动.frm

範例二:

點選下載範本:地图钻取与联动示例二.frm

附件列表


主題: 圖表應用
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉