1. 問題描述
地圖的鉆取功能,如下圖,首次訪問顯示全中國各省份數(shù)據(jù)。點擊山東省,進入山東省省地圖,顯示山東省數(shù)據(jù),并在右側的柱形圖上顯示展現(xiàn)該數(shù)據(jù),實現(xiàn)聯(lián)動效果。
動1.png)
2. 實現(xiàn)步驟
2.1 數(shù)據(jù)準備
新建2個數(shù)據(jù)查詢ds1和ds2,:
ds1:SQL為SELECT * FROM [地圖]。
ds2:SQL為SELECT * FROM [地圖] where 省份='${provience}'。
2.2 地圖制作
· 添加地圖
合并一片單元格,點擊菜單欄中的插入>單元格元素>插入圖表,選擇地圖,然后點擊確定,如下圖:
· 地圖類型
選中地圖,在設計器右側的圖表屬性面板圖表屬性表-類型選擇地圖類型,默認選擇為國家地圖>中國。
注:設計器內(nèi)置有三種地圖,世界地圖,國家地圖以及省市地圖,其中國家地圖有兩個,中國和美國,省市地圖為中國的各省市地圖,如需自定義地圖,則可導入自己準備好的地圖圖片進行設計,詳細請查看自定義地圖鉆取與聯(lián)動。
· 區(qū)域對應
在FineReport的內(nèi)置數(shù)據(jù)庫中存有區(qū)域對應字段,即表示地圖的區(qū)域名跟數(shù)據(jù)庫中存有的區(qū)域名的對應關系,比如說:中國地圖,在地圖類型處選中中國,點擊設置按鈕,選擇區(qū)域對應字段,默認的區(qū)域對應字段為各省市的全稱,如下圖:
動2.png)
如果數(shù)據(jù)中的區(qū)域名稱跟內(nèi)置的區(qū)域名稱不一致,即要重新配置區(qū)域名稱對應,如上圖所示,進入定義區(qū)域名對話框,可直接在右側的數(shù)據(jù)庫區(qū)域名中手動輸入,也可選擇數(shù)據(jù)集之后,直接通過下拉框輸入。
本
注:如果數(shù)據(jù)庫中的區(qū)域名稱跟設計器中內(nèi)置的地圖區(qū)域名稱對應不上,在使用過程中就會使用默認的區(qū)域對應關系。
· 地圖數(shù)據(jù)
定義好地圖的類型之后,就可以為地圖定義數(shù)據(jù)來源了,選中地圖,點擊圖表屬性表-數(shù)據(jù),進入數(shù)據(jù)設置面板,地圖展現(xiàn)方式選擇多層鉆取,如下圖:
動3.png)
鉆取層級設置
從上圖可以看到,鉆取層級下有個中國的文件夾,選中中國文件夾,右擊,則會跳出層級設置對話框,如下圖:
動4.png)
圖中的鉆取對應地圖表示該區(qū)域在鉆取完成之后顯示的地圖,可手動輸入,也可下拉框選擇,但是該地圖必須是定義好的,即必須是內(nèi)置的地圖或者是自定義好的。
注:如果鉆取層次不止兩級,比如說鉆取到福建省之后,還需要鉆取到福建省下面的縣級市,但是我們內(nèi)置地圖只到省市,沒有內(nèi)置縣級市的地圖,這是時候就需要自定義地圖,即自定義縣級市地圖,然后選中福建省,右擊,進入下層鉆取設置,在鉆取對應地圖中選擇自定義的地圖。比如,自定義了一張泉州市地圖,如下圖設置即可鉆取至泉州市:
動5.png)
鉆取數(shù)據(jù)設置
點擊鉆取數(shù)據(jù),為每個層次的地圖添加數(shù)據(jù),層次1即中國地圖的數(shù)據(jù)來源為ds1,區(qū)域名為省份,區(qū)域值為銷售額,層次2即省市地圖的數(shù)據(jù)來源也為ds1,區(qū)域名為地名,區(qū)域值為利潤額,如下圖所示設置:
動6.png)
注:支持地圖層級鉆取的數(shù)據(jù)表的數(shù)據(jù)必須全部在一張表中。如果用戶數(shù)據(jù)在多張表,需要用戶自己寫sql合成一張表。
在設置鉆取層次時,數(shù)據(jù)設置了幾層就顯示幾層,空白層次不顯示。
· 地圖樣式設計
選中地圖,點擊圖表屬性表-樣式>系列可修改值區(qū)間以及配色方案。如下圖:
動7.png)
注:
數(shù)據(jù)區(qū)間配置
數(shù)據(jù)區(qū)間配置如果選擇自動, 即設計器會根據(jù)數(shù)據(jù)的最大值最小值自動劃分區(qū)。
我們這里選擇自定義,主題顏色改為深綠色,劃分階段使用默認值5,區(qū)間段設置如上圖所示,如果需要修改區(qū)間段的顏色,點擊色塊即可修改。
2.3 柱形圖
合并一片單元格,點擊插入>單元格元素>插入圖表,選擇柱形圖,點擊確定即可添加一張柱形圖。
· 柱形圖數(shù)據(jù)來源
動8.png)
· 柱形圖樣式設計
給柱形圖添加標題各地區(qū)利潤額排名,如下圖:
動9.png)
2.4 聯(lián)動設置
如上所述,地圖和柱形圖都已經(jīng)設置好了,如果要實現(xiàn)聯(lián)動,則需要在設置交互屬性。
選中地圖,在圖表屬性表中選擇特效,點擊交互屬性,添加一個超級鏈接,即點擊
,添加一個圖表超鏈-聯(lián)動單元格,設置如下圖:
動11.png)
posted on 2013-04-01 13:44
season 閱讀(580)
評論(0) 編輯 收藏 所屬分類:
Java報表—技術知識 、
Java報表—使用心得