Welcome! 登入 註冊
美寶首頁 美寶百科 美寶論壇 美寶落格 美寶地圖

Advanced

秒殺Excel的動態視覺化報表,不用學python,用它僅需10分鐘

做過報表的人,尤其是經常有報表需求的人,想必都會有這樣一個困惑:

為什麼同樣是做報表,其他人的報表就能夠得到領導的肯定,而自己的報表就會被老闆丟掉一邊?

這個問題其實很好回答,你想一想,如果你是老闆,當你想要看一份銷售量統計圖的時候,擺在你面前的是這樣一張報表,你還有仔細看下去的耐心嗎?

沒有!連看下去的欲望都沒猶豫,更不要說用這樣的報表為下半年的行銷策劃做分析決策了!

報表最根本的目的就是要傳達資料資訊,是要給人看的,好的報表絕對不是枯燥的表格堆疊,而應該是簡潔、美觀、準確、講人話的,也就是說報表也講究「顏值」,而讓報表動起來則是提高報表顏值最省力的方法。

比如還是上面的場景,如果現在擺在你面前的報表是這樣的動態報表,你心中有沒有驚豔的感覺?是不是瞬間覺得高大上了?是不是資料資訊一目了然?

其實,動態報表不只是看上去顏值高而已,更重要的是能夠充分解放報表製作的重複勞動,讓使用者能夠依賴這些動態資料主動地進行業務分析,大大提高工作效率和決策準確性!

比如在日常的報表製作過程中,如果想要根據欄位查看不同值所對應的報表,普通方法就是針對每一個值都做一張不同的報表,不僅工作量巨大,而且交互性差,每看一個值就要調用一張報表,麻煩至極;這時候就可以利用動態報表的過濾功能,想要調用什麼報表就設定什麼條件,一張報表就可以解決問題,省去了不必要的時間。

這就是動態報表的魅力,他可以讓報表自講自話,讓使用者的被動接受資料變成主動控制資料,老闆關心什麼資料,報表上就會顯示什麼資料,大大減少了決策時間,提高老闆的效率就是變鼓自己的腰包,會不會用這個小小的動態效果差別就是這麼大!

那麼什麼樣的報表才算是動態報表呢?
千萬不要以為讓圖表動一動就算是動態報表了,動態報表的準確定義是指沒有固定報表範本,需要根據實際業務動態生成範本的報表,其核心在於資料和圖表類型可隨條件的不同即時展現,即除了能展現一般的靜態圖表內容之外,還必須具有良好的交互性。

這麼說可能有人就更懵了,簡單來說其核心就一點:報表資料能隨條件隨時調用。比如老闆想要查看某個月份的資料,只需要透過設定一個參數過濾條件,老闆在控制項中選擇什麼時間月份,報表就只會顯示哪個月的資料,根本不需要任何圖表,這就叫做動態報表。

而動態報表的目的是為了更便捷、更迅速地查詢和閱讀資料,在這個基礎上動態報表需要包含很多邏輯動能,比如:

1、參數過濾
條件不同,看到的資料就不同,這是動態報表的基礎功能。


2、參數聯動
將兩個或多個元件建立連結,實現資料之間的自動關聯。比如點擊員工名稱,訂單金額、回款額等就會自動關聯為該員工的資料。


3、鑽取
動態報表的常見功能,主要是為了實現無限層資料的擴展,展開維度更高的詳細資料。比如動圖下鑽。


4、參數面板動態顯示
由於某些需要,很多情況下需要滿足當滿足某個條件時,某些查詢準則才顯示。比如選擇年報,後面的參數框就會自動顯示為年份,選擇月報,後面的參數框就會自動顯示為月份。


5、動態資料欄
若資料庫中存在兩張表,如何實現不同的人根據需要選擇不同的表進行查看,從而提高查詢效率呢?此時就可以透過設定動態資料欄,在控制項中輸入“訂單”或者“銷量”,就會分別展示不同報表:


6、動態條件
如果你想對表中的資料進行過濾時,查詢準則是不確定的,有時候想用 A 欄進行過濾,有時候想用 B 列進行過濾,比如我想查詢地區是華北的資料,此時要如何實現呢?這個時候就要用到動態條件了!

除此之外還有很多功能,比如動態顯示報表標題、動態分組、動態sheet擴展等等,這裡不一一展示了。

那麼,怎麼能夠快速地做出動態報表呢?
第一步當然是要選擇好用的工具了,很多人用Excel也能做出來動態報表的效果,但是步驟非常複雜和繁瑣,需要學會透視表、切片器和很多邏輯函數才行,為了報表效果而犧牲時間成本是得不償失的,而且最後做出來的效果也是差強人意,並沒有很高的交互性。

那麼有沒有一種能夠方便快捷地製造動態報表的工具呢?當然有!今天我要安利的這款神器,就完全可以輕輕鬆松實現5分鐘一張動態報表,而且保證能讓你的老闆看傻眼,上面展示的動態效果全都是由FineReport做出來的哦!

好了,不賣關子了,這個神器就是FineReport,一款專業的企業級web報表工具,如果用三個詞來形容他就是「簡單、專業、靈活」。

話不多說,我們下面就用FineReport來實操一下,如何製作一張簡單的參數過濾動態報表吧!

1、下載安裝FineReport,匯入資料
在官網上下載好FineReport最新版之後,進入報表製作介面,借助官網的幫助文檔熟悉一下簡單的操作和介面設定,包括資料連結、資料匯入、資料查詢等等。熟悉之後選擇資料庫查詢,就可以找到自己想要匯入的資料,拖拽到儲存格中,如下圖所示:


2、定義參數
資料匯入之後,我們就需要設定一個參數,透過參數實現不同值的查詢,在FineReport中可以直接透過「範本-範本參數」選擇,例如我設定參數名稱為p1,預設值為「華北」,如下:


3、參數過濾設定
雖然設定完了參數,但是沒有經過過濾的參數最終還是會展示出全部資料,因此這一步非常關鍵,需要對儲存格進行參數過濾的設定,設定儲存格地區對應參數地區:


4、控制項設定
完成了參數過濾,但是還需要一個能夠存放參數選擇的控制項,本報表中選擇使用下拉控制項,如下:


5、報表完成
做到這裡,一張動態報表就基本上完成了,可以點擊分頁預覽進行查看了:

由於篇幅原因,參數面板動態顯示、動態列、動態顯示報表標題、動態分組、動態sheet擴展等功能就不具體一一實操了,基本上都跟上面展示的一樣簡單易學。

不只是報表,還有資料視覺化
酷炫的dashboard都需要通過FineReport的表單(決策報表)來設計展現。通過拖拽報表塊、圖表塊和各類控制項初步設計介面。

不同于普通報表,普通報表是一個整體,無法實現局部刷新。表單是由各個元件組成,可以實現元件內刷新,即局部刷新。像動態大屏都是全域或者局部刷新的,所以需要用決策報表製作實現。

1、決策報表製作過程
新建表單:FineReport支援新建工作薄,即普通報表範本,還支援新建表單,兩種設計模式。

拖入組件:FineReport表單支援多種不同的元件類型,包括報表塊、tab塊、絕對畫布塊、參數、圖表和控制項等等。

定義資料集:定義各個元件資料來源,圖表元件資料即可來源於資料集,也可來源於儲存格。

設定表單樣式:即設定表單的顯示樣式。







2、精美的視覺化外掛程式
以下外掛程式都是帆軟開發者大賽的精美作品,有些已經應用在FineReport上了。

3D地球:四維時空展示與資訊管理,前所未有的視覺衝擊


功能:立體地球是非常好的跨區域的基於地理資訊的資料載體。相對於平面地圖,3D地球更加生動,表現力也更強。3D地球外掛程式支援基於數量和位置的點標注以及以兩個位置和時間為維度的流向地圖,實現了Web環境下的三維展示與空間資訊管理,也能夠基於報表平臺進行資訊發佈、資料共用、交流協作,並且完全基於 B/S 模式,與決策大屏無縫連接。

適用:在國土資源、跨國交通和跨境貿易等方面有著廣泛的應用。

3D全景地圖:構造都市圈級別的宏達場景

功能:3D全景地圖外掛程式把時間和空間帶進了帆軟。從時間上看,外掛程式支持將日期作為維度,把點的運動軌跡動態呈現在地圖上,並且支持多種軌跡分類;從空間上看,外掛程式使得城市建築脫離平面,立體出來,提供與滑鼠之間的交互。不僅如此,客製化後的外掛程式還支援即時刷新資料,在地圖上顯示多種標記點,左鍵拖動地圖,按住滑鼠右鍵移動可以轉換視角。

適用:適用於政府部門、連鎖企業、LBS提供商等對真實經緯度和展現區域範圍敏感的使用者

軌跡圖:説明企業輕鬆追蹤百萬終端即時軌跡
功能:軌跡圖外掛程式支持對經緯度點數據動畫的各種配置,包括運動軌跡的速率、顏色、拖尾、順序等等。帆軟FineReport使用者配置好軌跡圖外掛程式後,可在報表或大屏中同時管理並追蹤數千萬終端設備的軌跡。





適用:適用於物流車隊管理、互聯網創業公司共用出行大屏、外勤人員管理報表監控系統、運用智慧穿戴設備的健康物聯網等領域。

接入Echarts等協力廠商控制項
之前很多網友留言,問這樣的視覺化是什麼圖表製作的。其實大多由FineReport自帶的H5圖表。此前有提到FineReport良好的開放性,可讓IT同事寫程式碼開發,所以在製作時,也可接入Echarts等協力廠商控制項來製作圖表。

在做戰情室展示時,碰到帆軟自帶圖表不能滿足需求,需要Echarts其他圖表來滿足,一種方法是用網頁框去外鏈圖表單頁,但這種方法需要開發程式碼獲取資料。

還有一種是用帆軟自有功能掛接Echarts圖表,下面來詳細介紹這種方法

1、新建決策報表,在報表內放入標籤控制項(用於顯示圖表)、表格控制項(用於對接資料)

2、新建資料集


3、在表格中填入數據

JOINARRAY(ds1.select(c), “,”)


預覽是這樣,兩個數據都是字符串

把表格設為不可見

4、在標籤控制項加 初始化後程式碼,加入兩個參數,值為表格裡面的字串ss=report0~a1
,aa=report0~a2


5、加入以下js程式碼

setTimeout(function (){ //延時執行
$(“div[widgetname=LABEL0]”).empty(); //清空標籤控制項裡的內容 LABEL0 標籤控制項名
$(“div[widgetname=LABEL0]”).append(”

“); //往標籤控制項裡添加div,指定id
var myChart = echarts.init(document.getElementById(“echa”)); //指定echarts容器,echa 為新添加div的id, echarts限制必須用 document.getElementById(” “)

strs1 = ss[0].split(“,”); // 參數轉換成陣列,根據圖表資料格式進行處理
strs2 = aa[0].split(“,”);
//以下为echarts正常配置
option = {
xAxis: {
type: ‘category’,
data: strs1
},
yAxis: {
type: ‘value’
},
series: [{
data: strs2,
type: ‘line’
}]
};
if (option && typeof option === “object”) {
myChart.setOption(option, true);
}
}, 500);

6、保存預覽進行調試,注意其他js的引入

成圖就是這樣了:


總結
想用FineReport這樣的神器做出高顏值的動態報表並不是難事,難的是如何充分利用好這些繁多的功能,針對業務找到關鍵指標和資料,讓老闆一眼就能看到報表的價值所在,這才是報表人應該追求的目標。

感謝閲讀!FineReport提供最全永久免費功能版本,不用等待,直接點擊以下按鈕激活&下載!
免費試用>>
獲得帆軟最新動態:數據分析,報表實例,專業的人都在這裡!加入FineReport臉書粉絲團

相關文章:

超越Excel,這才是報表的正確打開方式,可惜90%的人都沒用過

報表開發「內核」在此,寫SQL只能算入門!

再見Python +Excel VBA!我終於等到了一鍵生成報表範本的神器


喜歡這篇文章嗎?歡迎分享按讚,給予我們支持和鼓勵!