天天看點

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

報表制作流程的第一步顯然是從各個資料源導入資料,Power BI能從很多種資料源導入資料:如Excel,CSV,XML,以及各類資料庫(SQL Server,Oracle,My SQL等),兩大主流開源平台(Hadoop,Spark)等等。本文篇幅所限,無法一一說明,僅就網頁擷取資料的方式進行講解(其他方式大同小異)。然後...

前言

        報表制作流程的第一步顯然是從各個資料源導入資料,Power BI能從很多種資料源導入資料:如Excel,CSV,XML,以及各類資料庫(SQL Server,Oracle,My SQL等),兩大主流開源平台(Hadoop,Spark)等等。本文篇幅所限,無法一一說明,僅就網頁擷取資料的方式進行講解(其他方式大同小異)。

        然後本文将在Power BI背景工作區(下簡稱背景區)對擷取到的資料集進行塑形。所謂塑形就是确定資料集的列名以及資料類型,還有進行一些基本資料清洗轉換工作,以保證Power BI報表子產品能正确解讀資料集。塑形後的資料集其實就是Power BI報表繪制區(下簡稱報表區)的輸入。

        一旦資料塑形好,我們就能切換到Power BI報表區繪制各種報表了。最後本文将制作一張報表,愉快地結束本次學習。

Power BI的三大工作區

        在上篇中,大緻介紹了Power BI的開發流程,如下圖所示:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        Power BI中,報表區和背景區分别對應"報表繪制"和"資料塑形"階段。關聯工作區(下簡稱關聯區)則負責關聯Power BI中的多個表。讀者現在無需糾結這個工作區,後期教程會對它進行詳細講解。

        剛打開Power BI,将進入到報表區。下圖示記了報表區中背景區的入口:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        點選左側中間那個亮藍色按鈕則會進入到背景區的"隻讀模式"。它不是真正的背景工作區不能對資料做任何轉換處理工作,這點初學者務必注意。

        下圖示記了背景區進入報表繪制區的入口,點選該按鈕會傳回到報表區并使用塑形後的資料更新報表:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

導入資料

        本文采用的資料集來源于如下網頁:

        http://www.bankrate.com/finance/retirement/best-places-retire-how-state-ranks.aspx

        該網頁描述的主題是"退休以後生活在哪裡(美國哪個州)最合适",表中字段資訊均為各州在居住成本、稅率、犯罪率等方面在全國的排名。

        用浏覽器打開看看:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        本文工作的第一步,就是使用Power BI将這份表格抓下來。不需要把網頁拷出來,更不需要寫爬蟲,隻需要将網頁位址告訴Power BI,它就能幫你把這份表格完完整整地抓下來。

        首先,在報表區點選擷取資料:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        然後,選擇Web格式資料:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        再輸入要抓取的網址:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        稍後片刻這份表格就被抓下來啦,整個過程1分鐘都不用:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        而拿到資料的下一步,就是資料塑形。一般來說網頁顯示的資料格式未必是您要的報表資料格式,下面我們進入背景區來"捏一捏"這些資料。(進入背景區的方式上面講了,這裡就不浪費篇幅了哈)

資料塑形 - 工作區介紹

        進入背景區後,将看到如下視窗:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        主區域展示了本文從網頁擷取到的表格,此外上方還有一批功能欄。其中,開始功能欄内容如下:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        這些都是最常用的資料塑形操作,如重載資料、删除行列、排序、列拆分、資料分組,合并查詢等等。其他三個功能欄:轉換、添加列、視圖則是對應資料塑形功能的細化。

        另外需要注意的是查詢設定視窗。我們在工作區做的任何操作在這裡都會記錄下來,可随時點選以回退到過去的操作(不要Ctrl + Z哈):

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        我們在曆史操作中做了修改後,下遊操作也會被同步更新。另外點選途中紅框處的那個X可以将該操作撤銷。

        關于查詢設定視窗還有很多好玩的用法,本文篇幅所限就不一一說明了,讀者可自行嘗試。

資料塑形 - 工作流程

        下面我們回過頭來看看擷取到的這份表格:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        首先檢查行名、列名、行數、列數。發現多出了一個Header列,将它删掉。其他部分沒啥問題。

        然後檢查各列的資料類型,確定需要統計的字段是可統計的類型(如整數,浮點數等)。具體方法是将功能欄切換到"轉換功能欄",每當我們點選一列時,下圖紅色标記位置将顯示列的資料類型:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        顯然上圖中列的資料類型是錯的,需要将它轉換為整數型。為什麼單就這一列有問題,沒被正确轉換為整型呢?這是因為該列有些字段含有文本字元,如上圖中的藍框标記處。

        解決方法很簡單,在"轉換功能欄"配置替換機制将這些異常資料修複。比如将"27(tied)"替換為"27"就可以了。

        資料修複完畢後,即可對它進行轉型。隻需右鍵->轉換類型-> 整型即可,也可以直接在功能區進行修改:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        然而,假如現在多了一個需求:要求資料集中還得有州的簡稱。怎麼做?一個個輸進去嗎?

        當然不是的,假如資料量很大,幾千行,那不得加班加點搞了。幾萬行,幾十萬行呢?在使用任何工具的時候都應該思考如何"偷懶",這裡可使用Power BI的資料合并功能輕松做好這個需求。

        在維基百科裡,可以搜尋到美國各州對應的簡稱(https://en.wikipedia.org/wiki/List_of_U.S._state_abbreviations),打開該網頁:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        接下來将把原來的表格關聯到上述表(相當于SQL中的Join),并截取其中的ANSI列(該清單示各州簡稱)。用先前的方法,将該網頁的這份報表抓取下來。然後對該表格内容進行以下塑形工作:

        1. 移除頭兩行表頭資訊:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)
第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        2. 移除底端26條資訊(它們不是美國的州名,而是些美屬領土)。方法和1類似,就不截圖展示了。

        3. 篩選掉行政特區:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        4. 删除多餘的列。直接在需要删除的列的表頭右鍵,然後點選删除列即可。(可Ctrl法選擇多個列)

        5. 将第一行標明為表頭:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        6. 修改列名(右鍵點選清單頭->重命名即可)。塑形完畢後,該表資料如下:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        因為這份表格資料比較雜亂一點,和需求不是非常吻合,是以塑形工作多了點。不過大都是些界面操作,做下來也就5分鐘左右的工作量。

        接下來是見證奇迹的一刻^_^:将兩份表格Join起來。具體方法是在"開始功能欄"點選"合并查詢",然後設定連接配接資訊:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        點選确定後,發現新生成的表竟然多了一列呢:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        展開它就是了:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        要注意State Name是連接配接鍵屬性,原表亦有該字段。故不用展開它。

        至此,一個階段的資料塑形算是完成了,接下來就可以進入到報表區繪制報表。下面是本階段資料塑形的結果表:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        其中選中的清單示各州的簡稱,是通過合并查詢擴充到的字段。

        需要提醒讀者的是資料塑形得越規整,接下來的報表制作就越是得心應手。是以請讀者耐心看完這部分的講解,心急吃不了熱豆腐:)

報表制作 - 工作區介紹

        回到報表繪制區,我們将看到如下視窗: 

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        其中開始功能區是制作報表過程中常用到的編輯功能和可視化的管理功能。模組化功能區允許使用者在報表區完成一些簡單的資料塑形工作。格式功能區則允許使用者對工作區報表進行布局和圖層控制。

        報表區的右側則是我們的工作區:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        這是報表區工作的核心位置,它的用法将在下一節詳細講解。

報表制作 - 詳細流程

        Power BI中,不論是繪制什麼圖表,總體的步驟都是以下幾步。下面筆者以一個簡單報表為例講解Power BI中報表制作的總體過程。

        1. 選中目标繪制圖形。我們這裡選擇一個經典的條狀圖吧:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        2. 往可視化圖中填資料。填的方式是通過拖拉列。假如我們想重點分析總排名和稅率排名的關系,可以這麼拖:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        發現柱狀圖有東西顯示了:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        顯然由于一次分析的州太多,有限的空間顯示不來的。。。

        3. 篩掉一部分資料。如果我們想隻分析美國事宜退休人員居住排行榜前10的州,可設定篩選器:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        這樣設定将令Power BI繪制報表時隻取用總排名前10的州的資料。點選應用後發現圖像那麼回事兒了:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        但現在又發現一個問題。橫軸的循序顯然是按照州名排序的,這樣的圖根本看不出任何資訊。

        4. 調整可視化元素呈現順序。關鍵是在模組化功能區設定列的排序方式。我們首先選中需要調整順序的目标列:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        然後在模組化功能區修改該列的呈現規則,将其展現順序綁定到Overall rank列:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        這樣柱狀圖就會按照Overall rank列遞增的順序繪制柱狀。

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        5. 美化工作。點選下圖紅圈中的那個畫筆即可進入美化工作區:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        選項非常多,請讀者們自行發揮自己的美學天賦吧!

        6.  排版布局。在報表區的格式功能區有不少排版功能選擇:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

        當報表中有很多圖像元素時,讀者可使用這些功能對它們進行排版。具體方法和Office,Visio中的圖形布局是完全一樣d的。

        7. 儲存釋出。Power BI儲存的本地工程檔案為.pbix格式。除此之外使用者還可以将報表釋出出去,在移動端(如平闆)随時展示已制作的報表。釋出及釋出後的使用方法會在下一章講解,敬請期待。

小結

        總的來說,使用Power BI繪制報表最關鍵的還是在于資料塑形步驟。隻有這個步驟做好了,報表繪制起來才能得心應手。

        在充分掌握了資料塑形技巧後,就可以将更多精力放在各種各樣的可視化圖形上。要注意的是Power BI除了包含不少内置圖表,還支援從微軟官網或其他地方下載下傳成百上千種圖表格式。

課後作業

        由于在之前我們已經對資料做了初步塑形了,是以之後的報表制作将非常輕松愉快。接下來讀者可盡情發揮自己的想象力制作各種酷炫報表,盡量搞清楚Power BI中所有内置圖形的繪制方法。

        下面是筆者自己随便做的一份報表,輕拍^_^:

第二篇:Power BI資料可視化之基于Web資料的報表制作(經典級示例)

繼續閱讀