基於設置頁面、視點、行維、列維等功能,我們可以實現分析當中用到的旋轉、切片功能。
前面幾小節,說明了如何全表呈現一張分析表單,但那些還是靜態呈現方式。
本節開始側重闡述上卷、下鑽功能、頁面切換的實現。
上卷:
上卷功能實現比較簡單:基本原理爲“數格子”,及找出需要“切”掉的單元格,把剩餘的單元格重新裝配爲一個新的viewGrid.
根據新的viewGrid,show Data.
上個示意圖(以列爲例):
點擊第一季收縮,首先找出受影響的列 E、F、G,根據受影響的列,去掉列頭,接着對行循環,去掉圖中藍色的區域,剩餘的區域就是新的viewGrid.我們可以根據這個新的viewGrid,直接show Data.
下鑽:
以列爲例,5步完成下鑽動作。
- 根據當前點位相關的memberId,找到其下級的member,
- 依據這些members,動態生成mdx String,
- 執行mdx,獲取相應的result.
- 根據執行結果result重新生成viewGrid!
- 根據這些新的viewGrid,重新showData!
未完、待續......