Python數(shù)據(jù)可視化任務(wù)教程全套教學(xué)課件_第1頁
Python數(shù)據(jù)可視化任務(wù)教程全套教學(xué)課件_第2頁
Python數(shù)據(jù)可視化任務(wù)教程全套教學(xué)課件_第3頁
Python數(shù)據(jù)可視化任務(wù)教程全套教學(xué)課件_第4頁
Python數(shù)據(jù)可視化任務(wù)教程全套教學(xué)課件_第5頁
已閱讀5頁,還剩186頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

全套可編輯PPT課件單元1認(rèn)識(shí)數(shù)據(jù)可視化.pptx單元2Python開發(fā)環(huán)境及常用數(shù)據(jù)處理操作.pptx單元3數(shù)據(jù)可視化—圖表的基本類型.pptx單元4Matplotlib數(shù)據(jù)可視化.pptx單元5Seaborn數(shù)據(jù)可視化.pptx單元6pyecharts數(shù)據(jù)可視化.pptx單元7國民經(jīng)濟(jì)和社會(huì)發(fā)展統(tǒng)計(jì)數(shù)據(jù)可視化.pptx3.了解數(shù)據(jù)可視化的工具和庫。了解數(shù)據(jù)可視化的概念2.了解數(shù)據(jù)可視化的作用。1.1

什么是數(shù)據(jù)可視化

01.思考:為什么要進(jìn)行數(shù)據(jù)可視化?

02.數(shù)據(jù)可視化的概念

數(shù)據(jù)可視化,是關(guān)于數(shù)據(jù)視覺表現(xiàn)形式的科學(xué)技術(shù)。數(shù)據(jù)視覺表現(xiàn)形式被認(rèn)為是以某種概要形式抽取出來的信息,包括信息的各種屬性和變量。簡而言之,數(shù)據(jù)可視化就是指將數(shù)據(jù)以圖形圖像形式表示,并利用數(shù)據(jù)分析和開發(fā)工具發(fā)現(xiàn)其中未知信息的處理過程?!救蝿?wù)1-1】期末成績的分布分析任務(wù)描述在MicrosoftExcel2010電子表格grades.xlsx中保存某班級、某門課程的期末成績,現(xiàn)要求對該期末成績按照成績統(tǒng)計(jì)分?jǐn)?shù)段進(jìn)行統(tǒng)計(jì)人數(shù)分布分析,并分別用數(shù)據(jù)和圖表兩種方式展示分析效果。成績統(tǒng)計(jì)分?jǐn)?shù)段如下。(1)成績在大于等于90分,并且小于等于100分之間,標(biāo)記為[90~100]。(2)成績在大于等于80分,并且小于90分之間,標(biāo)記為[80~90)。(3)成績在大于等于70分,并且小于80分之間,標(biāo)記為[70~80)。(4)成績在大于等于60分,并且小于70分之間,標(biāo)記為[60~70)。(5)成績在大于等于0分,并且小于60分之間,標(biāo)記為[0~60)。任務(wù)實(shí)施1.計(jì)算各分?jǐn)?shù)段的人數(shù)2.繪制成績分布圖表比較兩種數(shù)據(jù)顯示方式的效果1.2數(shù)據(jù)可視化的作用數(shù)據(jù)可視化主要有3個(gè)方面的作用:

(1)真實(shí)、準(zhǔn)確、全面地展示數(shù)據(jù)。(2)以較小的空間承載較多的信息。(3)揭示數(shù)據(jù)的本質(zhì)、關(guān)系、規(guī)律。【任務(wù)1-2】產(chǎn)品銷售情況統(tǒng)計(jì)表分析任務(wù)描述現(xiàn)有某銷售公司的產(chǎn)品銷售情況統(tǒng)計(jì)表.xlsx,該公司第1季度至第4季度的產(chǎn)品銷售數(shù)據(jù)如圖1-3所示,請用圖表方式展示該公司第1季度至第4季度產(chǎn)品銷售情況。任務(wù)實(shí)施1.為了能更簡單直觀地展示產(chǎn)品銷售情況,現(xiàn)通過MicrosoftExcel2010電子表格中的圖表功能,生成該公司第一季度至第四季度的產(chǎn)品銷售折線圖,如圖1-4所示,操作步驟見教材所示。2.通過“選擇數(shù)據(jù)”→“切換行/列”按鈕,切換系列與分類,獲得圖1-5所示的圖表。比較兩種圖表表示方式1.3數(shù)據(jù)可視化的工具和庫【任務(wù)1-3】數(shù)據(jù)可視化的工具任務(wù)描述了解數(shù)據(jù)可視化的工具。知識(shí)儲(chǔ)備數(shù)據(jù)可視化的實(shí)現(xiàn)有多種方案,這取決于不同的應(yīng)用場景。在日常工作中,人們習(xí)慣于使用的Excel電子表格軟件來處理表格數(shù)據(jù)。

除此之外,用戶可以使用Tableau這一類非編程工具,不僅可以通過連接數(shù)據(jù)庫,呈現(xiàn)動(dòng)態(tài)的數(shù)據(jù)變化,還可以實(shí)現(xiàn)數(shù)據(jù)與圖表的完美結(jié)合,進(jìn)而生成較好的數(shù)據(jù)觀感。

隨著Python、R、MATLAB等編程語言廣泛地應(yīng)用于數(shù)據(jù)分析中,通過這些編程語言中相應(yīng)的繪圖庫,就可以靈活地實(shí)現(xiàn)數(shù)據(jù)可視化。另外,通過JavaScript的數(shù)據(jù)可視化工具,如D3.js、Echarts還可實(shí)現(xiàn)在互聯(lián)網(wǎng)上互動(dòng)的展示數(shù)據(jù)?!救蝿?wù)1-4】Python數(shù)據(jù)可視化工具庫任務(wù)描述了解Python數(shù)據(jù)可視化工具庫。知識(shí)儲(chǔ)備在Python中數(shù)據(jù)可視化的繪圖工具庫分為免費(fèi)和收費(fèi)兩種,其中免費(fèi)的應(yīng)用性較好的數(shù)據(jù)可視化工具庫有Matplotlip、Seaborn、交互式的數(shù)據(jù)可視化工具Bokeh。此外,還有一款數(shù)據(jù)可視化工具pyecharts,它是一個(gè)用于生成Echarts圖表的類庫。pyecharts就是一款將Python與Echarts結(jié)合的強(qiáng)大的數(shù)據(jù)可視化工具。使用pyecharts可以生成獨(dú)立的網(wǎng)頁,也可以在flask,Django中集成使用。

【拓展任務(wù)1】中國原油生產(chǎn)和石油進(jìn)出口情況分析。要求根據(jù)1949-1965年中國原油生產(chǎn)和石油進(jìn)出口情況表,完成原油產(chǎn)量用柱形圖表示,年增長率用折線圖表示的合成圖表。任務(wù)實(shí)施1.創(chuàng)建“原油產(chǎn)量/十萬噸”的數(shù)據(jù)列2.繪制柱形圖和折線圖拓展訓(xùn)練【單元小結(jié)】本單元介紹了通過運(yùn)用Excel電子表格軟件的圖表處理功能,對grades.xlsx和產(chǎn)品銷售情況統(tǒng)計(jì)表進(jìn)行分析,說明數(shù)據(jù)可視化的概念和數(shù)據(jù)可視化的作用,然后重點(diǎn)介紹了數(shù)據(jù)可視化工具和庫,特別是Python數(shù)據(jù)可視化工具庫。3.了解Python數(shù)據(jù)可視化常用的類庫。1.掌握Python的開發(fā)環(huán)境搭建。2.掌握PyCharm安裝與使用。4.掌握數(shù)據(jù)可視化中pandas庫常用操作。【任務(wù)2-1】Python軟件安裝任務(wù)描述

在Windows操作系統(tǒng)下,安裝Python3.8.7版本軟件,并設(shè)置Python安裝路徑為E:\python。任務(wù)實(shí)施1.首先到Python官網(wǎng)下載與用戶Windows操作系統(tǒng)位數(shù)(32位或64位)相對應(yīng)的Python3.8.7版本。如Windows是64位就下載Windowsinstaller(64-bit),此時(shí)下載文件是python-3.8.7-amd64.exe(64位)的可執(zhí)行文件。

2.雙擊python-3.8.7-amd64.exe可執(zhí)行的文件,在安裝界面上勾選AddPython3.8toPATH,如圖2-1所示。2.1Python的開發(fā)環(huán)境搭建圖2-1Python3.8.7安裝界面圖2-2Python3.8.7選項(xiàng)功能界面3.在安裝界面上,選擇Customizeinstallation(自定義安裝)項(xiàng),進(jìn)入選項(xiàng)功能界面,如圖2-2所示。勾選選項(xiàng)功能界面上的所有選項(xiàng),單擊【Next】按鈕。圖2-4軟件安裝進(jìn)度圖圖2-3Python3.8.7高級選項(xiàng)界面圖2-5軟件安裝成功界面4.在打開的高級選項(xiàng)界面中,勾選“AssociatefileswithPython(requiresthepylauncher)”“Createshortcutsforinstalledapplications”“AddPythontoenvironmentvariables”“Precompilestandardlibrary”這4個(gè)選項(xiàng)。單擊【Browse】按鈕,可更改Python軟件安裝的路徑為E:\python,單擊【Install】按鈕,如圖2-3所示,開始軟件安裝。5.軟件安裝進(jìn)度圖,如圖2-4所示。軟件安裝成功后,彈出軟件安裝成功界面,如圖2-5所示,單擊【close】按鈕關(guān)閉界面?!救蝿?wù)2-2】Python環(huán)境變量配置及測試任務(wù)描述

如果在Python軟件安裝時(shí)沒有選擇“Addpython3.8topath”選項(xiàng),那么,在軟件安裝完成后,還需要將Python安裝路徑添加到用戶環(huán)境變量中。以Windows10系統(tǒng)中配置環(huán)境變量為例來介紹Python的環(huán)境變量配置與測試。任務(wù)實(shí)施

1.右鍵單擊桌面上“此電腦”圖標(biāo),在彈出的快捷菜單中選擇“屬性”命令,在彈出的“系統(tǒng)”窗口的右側(cè)單擊“高級系統(tǒng)設(shè)置”,將彈出“系統(tǒng)屬性”對話框,在該對話框中選擇“高級”選項(xiàng)卡。

2.在“系統(tǒng)屬性”對話框的“高級”選項(xiàng)卡中,單擊“環(huán)境變量”按鈕,將彈出“環(huán)境變量”對話框。3.選中用戶變量中的“path”選項(xiàng),單擊“編輯”按鈕。在彈出的“編輯環(huán)境變量”對話框中,單擊”新建“按鈕,分別創(chuàng)建兩個(gè)Python安裝路徑,即E:\python\Scripts\和E:\python\,如圖2-6所示,單擊”確定“按鈕完成環(huán)境變量的設(shè)置。4.測試Python。按”Windows“+”R“鍵,打開“運(yùn)行”對話框,在”打開”欄中輸入“python”,按“Enter”鍵,進(jìn)入Python的命令窗口。在Python命令提示符>>>后可輸入Python的命令代碼,按“Enter”鍵后直接運(yùn)行。2.2PyCharm安裝與使用

Python常用的集成開發(fā)環(huán)境有PyCharm和Jupyternotebook等。其中,PyCharm是由JetBrains公司開發(fā)的一款Python的集成開發(fā)環(huán)境軟件,PyCharm有免費(fèi)的社區(qū)版和付費(fèi)的專業(yè)版兩個(gè)版本?!救蝿?wù)2-3】PyCharm安裝任務(wù)描述在Windows操作系統(tǒng)下,安裝社區(qū)版本的PyCharm軟件。任務(wù)實(shí)施1.首先到j(luò)etbrains官網(wǎng)上去下載社區(qū)版本的PyCharm軟件,軟件名稱為pycharm-community-2020.3.3.exe。2.雙擊pycharm-community-2020.3.3.exe,打開PyCharm軟件安裝界面,按照安裝界面上的提示,參考教材上所示的操作步驟完成軟件安裝和啟動(dòng)?!救蝿?wù)2-4】PyCharm簡單設(shè)置任務(wù)描述完成更換主題、修改源代碼字體和字號(hào)、修改編碼設(shè)置、更改解釋器設(shè)置和設(shè)置快捷鍵方案的操作任務(wù)實(shí)施

1.

更換主題。

2.修改源代碼字體和字號(hào)。

3.

修改編碼設(shè)置。4.更改解釋器設(shè)置。5.設(shè)置快捷鍵方案。【任務(wù)2-5】PyCharm使用任務(wù)描述使用PyCharm創(chuàng)建Python項(xiàng)目和文件,以及編寫和運(yùn)行Python程序。任務(wù)實(shí)施1.新建項(xiàng)目。2.創(chuàng)建Python文件。3.編寫和運(yùn)行Python程序。

【任務(wù)2-6】NumPy簡介、測試、安裝與導(dǎo)入任務(wù)描述了解NumPy庫的基本功能,完成NumPy測試、安裝與導(dǎo)入。知識(shí)儲(chǔ)備NumPy是NumericalPython的簡稱,是高性能計(jì)算和數(shù)據(jù)分析的基礎(chǔ)庫。ndarray是NumPy的核心功能,其含義為n-dimensionalarray,即多維數(shù)組。在Python中使用NumPy的優(yōu)勢介紹。

1.測試Python環(huán)境中是否安裝了NumPy。2.在Windows操作系統(tǒng)下安裝NumPy庫。3.NumPy的導(dǎo)入。2.3Python數(shù)據(jù)可視化常用的類庫任務(wù)實(shí)施【任務(wù)2-7】pandas簡介、測試、安裝與導(dǎo)入任務(wù)描述了解pandas庫的基本功能,完成pandas測試、安裝與導(dǎo)入。知識(shí)儲(chǔ)備pandas庫最初是由WesMcKinney于2008年開發(fā)設(shè)計(jì)的,2012年,WesMcKinney的同事SienChang加入開發(fā)工作,他們一起開發(fā)出了用于數(shù)據(jù)分析的著名開源Python庫—pandas。pandas是圍繞著Series和DataFrame兩個(gè)核心數(shù)據(jù)結(jié)構(gòu)展開的,而Series和DataFrame分別對應(yīng)于一維序列和二維表結(jié)構(gòu)。

1.測試Python環(huán)境中是否安裝了pandas。2.在Windows操作系統(tǒng)下安裝pandas庫。3.pandas的導(dǎo)入。2.3Python數(shù)據(jù)可視化常用的類庫任務(wù)實(shí)施【任務(wù)2-8】在PyCharm中安裝NumPy和pandas庫任務(wù)描述在PyCharm的解釋器中導(dǎo)入NumPy和pandas庫。

打開PyCharm,選擇

“File”->“settings”->“project當(dāng)前項(xiàng)目名”->“PythonInterpreter”,單擊“PythonInterpreter”欄的下拉列表按鈕右邊的按鈕,將會(huì)彈出上下文菜單,選擇Add...菜單,會(huì)彈出創(chuàng)建虛擬環(huán)境對話框。在該對話框中選擇“Existingenvironment”項(xiàng),單擊“Interpreter”欄的下拉列表,選擇E:/python/python.exe(即Python安裝路徑),單擊”O(jiān)K“按鈕,加入安裝好的NumPy和pandas庫,單擊”Apply“按鈕,最后單擊”O(jiān)K“按鈕即可。2.3Python數(shù)據(jù)可視化常用的類庫任務(wù)實(shí)施【任務(wù)2-9】pandas的數(shù)據(jù)結(jié)構(gòu)任務(wù)描述了解pandas的Series和DataFrame兩大數(shù)據(jù)結(jié)構(gòu)。

知識(shí)儲(chǔ)備1.Series對象Series是一種類似于一維數(shù)組的對象,它是由一組數(shù)據(jù)(這組數(shù)據(jù)可以是Numpy中任意類型的數(shù)據(jù))以及一組與之相關(guān)的數(shù)據(jù)標(biāo)簽組成。Series的表現(xiàn)形式為:索引在左邊,值在右邊。創(chuàng)建Series對象的Series()構(gòu)造函數(shù)如下。

pandas.Series(data[,index])

其中:data是輸入給Series構(gòu)造器的數(shù)據(jù),它可以是Numpy中任意類型的數(shù)據(jù)。

index是Series對象中數(shù)據(jù)的標(biāo)簽(即索引)。2.4數(shù)據(jù)可視化中pandas庫常用操作介紹數(shù)據(jù)的存儲(chǔ)形式如表2-1所示?!救蝿?wù)2-9】pandas的數(shù)據(jù)結(jié)構(gòu)知識(shí)儲(chǔ)備

2.

DataFrame對象

DataFrame對象的數(shù)據(jù)結(jié)構(gòu)與工作表(較常見的是Excel工作表)極為相似,例如,用于表示姓名、性別和年齡的DataFrame數(shù)據(jù)結(jié)構(gòu)如圖所示。

2.4數(shù)據(jù)可視化中pandas庫常用操作任務(wù)實(shí)施

1.創(chuàng)建Series對象,其示例代碼example2-1.py。2.創(chuàng)建一個(gè)DataFrame對象,其示例代碼example2-2.py。

創(chuàng)建DataFrame對象的DataFrame()構(gòu)造函數(shù)如下。

pandas.DataFrame(data[,index[,columns]])其中:data是輸入給DataFrame構(gòu)造器的數(shù)據(jù),見表2-2。

index是DataFrame對象中行索引的標(biāo)簽。

columns是DataFrame對象中列索引的標(biāo)簽?!救蝿?wù)2-10】文件讀取操作2.4數(shù)據(jù)可視化中pandas庫常用操作任務(wù)描述該任務(wù)將介紹讀取文本文件和Excel文件的操作。知識(shí)儲(chǔ)備

1.文本文件讀取pandas提供了一些用于將表格型文本數(shù)據(jù)讀取為DataFrame對象的函數(shù),常用有read_csv()和read_table()函數(shù)。

read_csv()函數(shù)的語法格式如下:

pandas.read_csv(file,sep=',',header='infer',names=None,index_col=0,dtype=None,encoding=utf-8,engine=None,nrows=None)

read_table()函數(shù)的語法格式如下:

pandas.read_table(file,sep='\t',header='infer',index_col=None,dtype=None,encoding=utf-8,engine=None,nrows=None)

【任務(wù)2-10】文件讀取操作2.4數(shù)據(jù)可視化中pandas庫常用操作任務(wù)描述該任務(wù)將介紹讀取文本文件和Excel文件的操作。

知識(shí)儲(chǔ)備

2.Excel文件讀取

pandas提供了read_excel()函數(shù)來讀取Excel文件,其函數(shù)的語法格式如下。

pandas.read_excel(io,sheet_name=0,header=0,index_col=None,names=None,dtype=None)任務(wù)實(shí)施

1.讀取文本文件操作,其示例代碼example2-3.py。2.讀取Excel文件操作,其示例代碼example2-4.py。

【任務(wù)2-11】獲取數(shù)據(jù)操作2.4數(shù)據(jù)可視化中pandas庫常用操作任務(wù)描述該任務(wù)將介紹如何獲取DataFrame對象中的相關(guān)數(shù)據(jù)。任務(wù)實(shí)施

創(chuàng)建一個(gè)產(chǎn)品價(jià)格表的DataFrame對象,示例代碼example2-5.py,介紹獲取DataFrame對象中相關(guān)數(shù)據(jù)的操作。

1.選擇所有列的名稱和索引列表,如何修改example2-5.py。2.選擇所有的元素,如何修改example2-5.py。3.選擇一列元素,如何修改example2-5.py。

4.選擇一行元素,如何修改example2-5.py。5.選擇多行元素,如何修改example2-5.py。

6.選擇DataFrame實(shí)例中的一個(gè)元素或一個(gè)范圍內(nèi)元素,如何修改example2-5.py。7.篩選元素,如何修改example2-5.py。

8.

DataFrame轉(zhuǎn)置,如何修改example2-5.py?!就卣谷蝿?wù)2】常用數(shù)據(jù)處理操作。任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路任務(wù)描述

根據(jù)國家統(tǒng)計(jì)局發(fā)布的2011-2020年我國廣播電視情況數(shù)據(jù)表(該表中部分?jǐn)?shù)據(jù)展示效果如圖2-26所示),要求從表中分別獲取如下數(shù)據(jù)。(1)獲取2015-2019年的年份數(shù)據(jù)。(2)獲取2015-2019年的廣播節(jié)目綜合人口覆蓋率(%)和電視節(jié)目綜合人口覆蓋率(%)的數(shù)據(jù)。(3)獲取2011-2015年的電視劇播出部數(shù)(萬部)和進(jìn)口電視劇播出部數(shù)(部)的數(shù)據(jù)。

2.程序設(shè)計(jì),介紹task2-12.py。拓展訓(xùn)練【單元小結(jié)】本單元主要介紹Python數(shù)據(jù)可視化的開發(fā)環(huán)境搭建,包括Python的開發(fā)環(huán)境搭建,PyCharm安裝與使用,同時(shí),還介紹了Python數(shù)據(jù)可視化時(shí)常用的NumPy和pandas庫的測試、安裝與導(dǎo)入。最后介紹了pandas庫的常用操作。3.了解數(shù)據(jù)關(guān)系型圖表1.了解圖表的基本類型2.了解類別比較型圖表4.了解數(shù)據(jù)分布型圖表5.了解時(shí)間序列型圖表6.了解局部整體型圖表7.了解地理空間型圖表3.1圖表的基本類型數(shù)據(jù)可視化一般要經(jīng)歷4個(gè)過程,如圖3-1所示?!救蝿?wù)3-1】數(shù)據(jù)可視化的探索過程任務(wù)描述通過數(shù)據(jù)可視化的探索過程,了解圖表的基本類型。知識(shí)儲(chǔ)備圖3-1數(shù)據(jù)可視化的探索過程你所擁有的數(shù)據(jù)你想表達(dá)的數(shù)據(jù)信息你會(huì)使用的數(shù)據(jù)可視化方法你從圖表獲得的數(shù)據(jù)信息需要反復(fù)進(jìn)行思索問題:3.2

類別比較型圖表類別比較型圖表一般包含數(shù)值型和類別型兩種數(shù)據(jù)類型。例如在柱形圖中,x軸為類別型數(shù)據(jù),y軸為數(shù)值型數(shù)據(jù),采用位置+長度兩種視覺元素。常用的表示類別型數(shù)據(jù)的圖表有柱形圖、條形圖、雷達(dá)圖等。以產(chǎn)品銷售情況統(tǒng)計(jì)表.xlsx為例,采用柱形圖、條形圖和雷達(dá)圖來表示不同產(chǎn)品類別在四個(gè)季度的銷售金額的圖表如圖3-2~圖3-4所示。另外,還可以通過柱形圖來表示四個(gè)季度不同產(chǎn)品類別的銷售金額的圖表如圖3-5所示,圖表可參見教材?!救蝿?wù)3-2】了解類別比較型圖表任務(wù)描述了解類別比較型圖表的種類和圖表的作用.知識(shí)儲(chǔ)備3.3

數(shù)據(jù)關(guān)系型圖表數(shù)據(jù)關(guān)系型圖表分為數(shù)值關(guān)系型、層次關(guān)系型和網(wǎng)絡(luò)關(guān)系型三種圖表類型。1.數(shù)值關(guān)系型圖表主要展示兩個(gè)或多個(gè)變量之間的關(guān)系,包括常見的散點(diǎn)圖、氣泡圖、曲面圖、矩陣散點(diǎn)圖等。例如,月均收入與月消費(fèi)金額的散點(diǎn)圖如圖3-6所示,月均收入、月消費(fèi)金額和消費(fèi)占比的氣泡圖如圖3-7所示。圖表可參見教材。2.層次關(guān)系型圖表著重表達(dá)數(shù)據(jù)個(gè)體之間的層次關(guān)系,主要包括包含和從屬兩類,比如公司不同部門的組織結(jié)構(gòu),不同洲的國家包含關(guān)系等。3.網(wǎng)絡(luò)關(guān)系型圖表是指那些不具備層次結(jié)構(gòu)的關(guān)系數(shù)據(jù)的可視化?!救蝿?wù)3-3】了解數(shù)據(jù)關(guān)系型圖表任務(wù)描述了解數(shù)據(jù)關(guān)系型圖表的種類和圖表的作用。知識(shí)儲(chǔ)備3.4

數(shù)據(jù)分布型圖表數(shù)據(jù)分布型圖表主要顯示數(shù)據(jù)集中的數(shù)值及其出現(xiàn)的頻率或分布規(guī)律,包括統(tǒng)計(jì)直方圖、核密度曲線圖、箱形圖、小提琴圖等?!救蝿?wù)3-4】了解數(shù)據(jù)分布型圖表任務(wù)描述

了解數(shù)據(jù)分布型圖表的種類和圖表的作用。知識(shí)儲(chǔ)備3.5

時(shí)間序列型圖表時(shí)間序列型圖表強(qiáng)調(diào)數(shù)據(jù)隨時(shí)間的變化規(guī)律或者趨勢,x軸一般為時(shí)序數(shù)據(jù),y軸為數(shù)值型數(shù)據(jù),包括折線圖、面積圖、雷達(dá)圖、日歷圖、柱形圖等。其中,折線圖是用來顯示時(shí)間序列變化趨勢的標(biāo)準(zhǔn)方式,非常適合于顯示在相等時(shí)間間隔下數(shù)據(jù)的趨勢。例如,圖1-5就是用折線圖來表示產(chǎn)品銷售情況的時(shí)間序列型圖表,圖3-5產(chǎn)品銷售情況柱形圖不僅可用于表示類別比較型圖表,也可以用于表示時(shí)間序列型圖表?!救蝿?wù)3-5】了解時(shí)間序列型圖表任務(wù)描述

了解時(shí)間序列型圖表的種類和圖表的作用。知識(shí)儲(chǔ)備3.6

局部整體型圖表局部整體型圖表能顯示出局部組成成分與整體的占比信息,主要包括餅圖、圓環(huán)圖、旭日圖、華夫餅圖、矩陣樹狀圖等。其中,餅圖是用來呈現(xiàn)部分和整體關(guān)系的常見方式。例如,可以將期末成績分布用餅圖表示,如圖3-8所示?!救蝿?wù)3-6】了解局部整體型圖表任務(wù)描述

了解局部整體型圖表的種類和圖表的作用。知識(shí)儲(chǔ)備3.7

地理空間型圖表地理空間型圖表主要展示數(shù)據(jù)中的精準(zhǔn)位置和地理分布規(guī)律,包括等值區(qū)間地圖、帶氣泡的地圖、帶散點(diǎn)的地圖等?!救蝿?wù)3-7】了解地理空間型圖表任務(wù)描述

了解地理空間型圖表的種類和圖表的作用。知識(shí)儲(chǔ)備【拓展任務(wù)3】數(shù)據(jù)可視化的應(yīng)用。

任務(wù)描述了解數(shù)據(jù)可視化的應(yīng)用。知識(shí)儲(chǔ)備1.政府及公共服務(wù)領(lǐng)域中的應(yīng)用2.商業(yè)領(lǐng)域中的應(yīng)用3.企業(yè)領(lǐng)域中的應(yīng)用4.學(xué)術(shù)研究領(lǐng)域中的應(yīng)用5.日常業(yè)務(wù)管理需求中的應(yīng)用拓展訓(xùn)練【單元小結(jié)】本單元介紹了數(shù)據(jù)可視化的探索過程,并依據(jù)數(shù)據(jù)想側(cè)重表達(dá)的內(nèi)容,將圖表分為類別比較、數(shù)據(jù)關(guān)系、數(shù)據(jù)分布、時(shí)間序列、局部整體和地理空間大類。然后,分別介紹了六大類圖表的種類和圖表的作用,并通過案例展示說明常用圖表,如柱形圖、條形圖、雷達(dá)圖、散點(diǎn)圖、氣泡圖和餅圖。3.了解Matplotlib繪圖的基礎(chǔ)知識(shí)1.了解Matplotlib作用2.掌握Matplotlib安裝和導(dǎo)入方法4.掌握使用pyplot創(chuàng)建圖形及參數(shù)配置的方法5.掌握繪制類別比較型圖表的方法7.掌握繪制數(shù)據(jù)分布型圖表的方法8.掌握繪制時(shí)間序列型圖表的方法9.掌握繪制局部整體型圖表的方法6.掌握繪制數(shù)據(jù)關(guān)系型圖表的方法4.1認(rèn)識(shí)MatplotlibMatplotlib庫是專門用于開發(fā)2D圖表的,是Python2D繪圖領(lǐng)域使用最廣泛的組件。它能讓使用者很輕松地將數(shù)據(jù)圖形化,并且提供多樣化的輸出格式。【任務(wù)4-1】Matplotlib簡介、測試、安裝與導(dǎo)入任務(wù)描述了解Matplotlib庫的基本功能,完成Matplotlib測試、安裝與導(dǎo)入。知識(shí)儲(chǔ)備任務(wù)實(shí)施1.測試Python環(huán)境中是否安裝了Matplotlib

2.在Windows操作系統(tǒng)下安裝Matplotlib庫3.Matplotlib的導(dǎo)入4.2Matplotlib繪圖的基礎(chǔ)知識(shí)

1.Matplotlib的繪圖接口

在創(chuàng)建圖表時(shí),需要導(dǎo)入Matplotlib中pyplot模塊,該模塊包含了用于創(chuàng)建可視化內(nèi)容的簡單接口。2.圖表對象與元素Matplotlib圖表的元素可分為兩類。(1)基礎(chǔ)類元素:線(line)、點(diǎn)(marker)、文字(text)、圖例(legend)、網(wǎng)格(grid)、標(biāo)題(title)、圖片(image)等(2)容器類元素:圖形(figure)、坐標(biāo)圖形(axes)、坐標(biāo)軸(axis)和刻度(tick)等。圖表元素層級結(jié)構(gòu):圖形(Figure)→坐標(biāo)圖形(Axes)→坐標(biāo)軸(Axis)→刻度(Tick)。3.常見圖表類型

Matplotlib可以繪制的常見二維圖表包括曲線圖、散點(diǎn)圖、柱形圖、條形圖、面積圖、餅圖、直方圖和箱形圖等,其常見二維圖表的繪圖函數(shù)如表4-1所示。【任務(wù)4-2】繪圖接口、圖表對象與元素和常見的繪圖函數(shù)任務(wù)描述了解Matplotlib的繪圖接口、圖表的對象與元素,以及常見的繪圖函數(shù)。知識(shí)儲(chǔ)備4.3使用pyplot創(chuàng)建圖表

介紹Matplotlib繪制直線的步驟?!救蝿?wù)4-3】繪制各種不同風(fēng)格的水平線和垂直線任務(wù)描述

利用Matplotlib繪制不同的水平線和垂直線,要求如下。

(1)繪制y=2,紅色,線型字符為“:”的水平直線。

(2)繪制y=1.5,從最左側(cè)到畫面中心位置,紅色,線型字符為“:”的水平直線。

(3)繪制y=2.5,從畫面中心位置到最右側(cè),紅色,線型字符為“:”的水平直線。

(4)繪制x=2,綠色,線型字符為“-”的垂直線。

(5)繪制x=1.5,從最下側(cè)到畫面中心位置,綠色,線型字符為“-”的垂直線。

(6)繪制x=3,從畫面中心位置到最上側(cè),綠色,線型字符為“-”的垂直線。知識(shí)儲(chǔ)備任務(wù)實(shí)施1.啟動(dòng)PyCharm,打開Visualization項(xiàng)目,新建Python文件,輸入Python文件名為task4-3.py。2.在PyCharm的代碼編輯區(qū)輸入task4-3.py程序代碼,介紹程序代碼設(shè)計(jì)思路。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-4】設(shè)置圖表標(biāo)題、軸標(biāo)簽、軸范圍和軸刻度任務(wù)描述

利用Matplotlib繪制一條正弦曲線,曲線顏色為紅色,曲線寬度為3,并為所繪制的正弦曲線圖表設(shè)置圖表標(biāo)題、軸標(biāo)簽、軸范圍和軸刻度,具體如下。(1)設(shè)置圖表標(biāo)題為“ACvoltage”。(2)設(shè)置x軸標(biāo)簽為“Time(s)”,y軸標(biāo)簽為“Volt”。(3)設(shè)置x軸范圍為[0,10],y軸范圍為[-1.5,1.5]。(4)將x軸[2,4,6,8,10]數(shù)字刻度替換成相應(yīng)的英文數(shù)字標(biāo)簽,并設(shè)置標(biāo)簽文字顏色為紅色、字體為斜體。4.3使用pyplot創(chuàng)建圖表1.繪制曲線圖的函數(shù)

調(diào)用Matplotlib下的plot()函數(shù)可實(shí)現(xiàn)在當(dāng)前繪圖對象中繪制曲線圖,plot()函數(shù)的語法格式如下。

plt.plot(x,y,label,color,linewidth,linestyle,**kwargs)或plt.plot(x,y,fmt,label,**kwargs)

函數(shù)中的參數(shù)說明見教材。

2.設(shè)置正弦曲線圖x軸和y軸上的數(shù)據(jù)

(1)x軸的數(shù)據(jù)

通過numpy.linspace()函數(shù),在x軸指定范圍內(nèi)返回均勻間隔的數(shù)字。numpy.linspace()函數(shù)的語法格式如下:

numpy.linspace(start,stop,num=50,endpoint=True,retstep=False,dtype=None)函數(shù)中的參數(shù)說明見教材。

(2)y軸的數(shù)據(jù)

通過numpy.sin(x)計(jì)算獲得?!救蝿?wù)4-4】設(shè)置圖表標(biāo)題、軸標(biāo)簽、軸范圍和軸刻度知識(shí)儲(chǔ)備4.3使用pyplot創(chuàng)建圖表3.設(shè)置圖表標(biāo)題suptitle()函數(shù)針對當(dāng)前或指定的Figure設(shè)置標(biāo)題,title()函數(shù)針對當(dāng)前或指定的Axes設(shè)置標(biāo)題。

title()函數(shù)的語法格式:plt.title(label,fontdict=None,loc=None,*args,**kwargs)

suptitle()函數(shù)的語法格式:plt.suptitle(label,**kwargs)函數(shù)中的參數(shù)說明見教材。4.設(shè)置軸標(biāo)簽plt.xlabel()和plt.ylabel()函數(shù)用于針對當(dāng)前軸設(shè)置標(biāo)簽,xlabel()和ylabel()函數(shù)的語法格式:

plt.xlabel(label,fontdict=None,loc=None,*args,**kwargs)#設(shè)置x軸標(biāo)簽

plt.ylabel(label,fontdict=None,loc=None,*args,**kwargs)#設(shè)置y軸標(biāo)簽函數(shù)中的參數(shù)說明見教材。【任務(wù)4-4】設(shè)置圖表標(biāo)題、軸標(biāo)簽、軸范圍和軸刻度知識(shí)儲(chǔ)備4.3使用pyplot創(chuàng)建圖表5.設(shè)置軸取值范圍plt.xlim()和plt.ylim()函數(shù)用于針對當(dāng)前軸設(shè)置取值范圍,xlim()和ylim()函數(shù)的語法格式:

plt.xlim(xmin,xmax)#x軸取值范圍

plt.ylim(ymin,ymax)#y軸取值范圍

xlim()和ylim()函數(shù)參數(shù)是表示新的軸限制,并以長度為2元組的形式返回。

如(xmin,xmax)表示x軸最小值和最大值。6.設(shè)置軸刻度

運(yùn)用Matplotlib下的xticks()和yticks()函數(shù)可實(shí)現(xiàn)在軸線當(dāng)前刻度位置上設(shè)置標(biāo)簽。

xticks()和yticks()函數(shù)的語法格式

plt.xticks(ticks=None,labels=None,**kwargs)和plt.yticks(ticks=None,labels=None,**kwargs)函數(shù)中的參數(shù)說明見教材?!救蝿?wù)4-4】設(shè)置圖表標(biāo)題、軸標(biāo)簽、軸范圍和軸刻度知識(shí)儲(chǔ)備4.3使用pyplot創(chuàng)建圖表【任務(wù)4-4】設(shè)置圖表標(biāo)題、軸標(biāo)簽、軸范圍和軸刻度任務(wù)實(shí)施(1)打開Visualization項(xiàng)目,新建Python文件,輸入Python文件名為task4-4.py。(2)在PyCharm的代碼編輯區(qū)輸入task4-4.py程序代碼,介紹程序代碼設(shè)計(jì)思路。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-5】設(shè)置圖例任務(wù)描述

利用Matplotlib繪制一條正弦曲線,曲線顏色紅色,曲線寬度1,另外,再繪制一條余弦曲線,要求為所繪制的余弦曲線設(shè)置一個(gè)名字為“cos(x)”,曲線顏色藍(lán)色,線型破折線,并為所繪制的曲線圖設(shè)置下列圖例。(1)設(shè)置圖例標(biāo)簽為“sin(x)”,“cos(x)”。(2)設(shè)置圖例標(biāo)題為“curve”。(3)設(shè)置圖例位置為左下。(4)設(shè)置圖例邊框顏色為綠色,字體大小為“small”。(5)設(shè)置圖例分2列展示。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-5】設(shè)置圖例知識(shí)儲(chǔ)備

1.繪制正弦曲線和余弦曲線

利用plot()函數(shù)繪制正弦曲線,通過指定label參數(shù),可實(shí)現(xiàn)在圖例中添加圖例標(biāo)簽的功能。

2.設(shè)置圖例

針對當(dāng)前Axes調(diào)用plt.legend(),或者針對特定的軸向調(diào)用Axes.legend()函數(shù)均會(huì)添加圖例。legend()函數(shù)的語法格式:plt.legend(*args,**kwargs)

legend()函數(shù)常用的參數(shù)如圖例標(biāo)簽、圖例位置、圖例字體、圖例邊框及背景設(shè)置、圖例標(biāo)題和圖例展示的列數(shù)的設(shè)置見教材說明。任務(wù)實(shí)施(1)打開Visualization項(xiàng)目,新建Python文件,輸入Python文件名為task4-5.py。(2)在PyCharm的代碼編輯區(qū)輸入task4-5.py程序代碼,介紹程序代碼設(shè)計(jì)思路。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-6】設(shè)置格式化字符串任務(wù)描述

利用Matplotlib繪制一條y=3x直線,直線的顏色為黑色,線型為實(shí)線,再繪制一條x2拋物線,該拋物線的顏色為藍(lán)色,倒三角標(biāo)記,線型為破折線;最后,繪制一條2x2+3x+1拋物線,該拋物線的顏色為紅色,實(shí)心圈標(biāo)記,線型為點(diǎn)劃線。要求用格式化字符串設(shè)置所繪制的曲線樣式。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-6】設(shè)置格式化字符串知識(shí)儲(chǔ)備

1.格式化字符串

格式化字符串是指定顏色、點(diǎn)樣式和線樣式的一種簡潔方式,形如“[color][marker][line]”。

其中,每項(xiàng)內(nèi)容均為可選項(xiàng)。格式化字符串中指定的顏色、點(diǎn)樣式和線樣式分別如表4-5、表4-6、表4-7所示。

2.使用numpy中的arange()函數(shù)創(chuàng)建一維數(shù)組

arange()函數(shù)類似于Python自帶的函數(shù)range(),通過指定起始值、終止值和步長來創(chuàng)建一維數(shù)組,但是該函數(shù)所創(chuàng)建的數(shù)組中不包含終止值。任務(wù)實(shí)施(1)打開Visualization項(xiàng)目,新建Python文件,輸入Python文件名為task4-6.py。(2)在PyCharm的代碼編輯區(qū)輸入task4-6.py程序代碼,介紹程序代碼設(shè)計(jì)思路。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-7】設(shè)置文本、標(biāo)注、網(wǎng)格線任務(wù)描述

在圖4-5所繪制的直線與拋物線圖表中,完成下列設(shè)置。

(1)為直線添加文本,文本位置為x=-8,y=0,文本內(nèi)容為y1=3x。

(2)為實(shí)心圈標(biāo)記的拋物線添加文本,文本位置為x=-8.5,y=150,文本內(nèi)容為y3=2x^2+3x+1,文本字體為紅色。文本邊框?yàn)閳A角矩形,背景色為灰色,邊框線顏色為綠色。

(3)對直線y1=3x和拋物線y2=x2的交點(diǎn)作一個(gè)標(biāo)注。標(biāo)注點(diǎn)的坐標(biāo)為(0,0),放置標(biāo)注文本的位置為(-1,50)。文本內(nèi)容為“node(0,0)”,文本字體大小為12號(hào),紅色,加粗,文本邊框?yàn)閳A角矩形,背景色為黃色,邊框線顏色為藍(lán)色,標(biāo)注箭頭的顏色為綠色。

(4)設(shè)置網(wǎng)格線。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-7】設(shè)置文本、標(biāo)注、網(wǎng)格線知識(shí)儲(chǔ)備

1.文本設(shè)置

繪制圖表時(shí),如果需要給圖表添加文字說明,則可以運(yùn)用text(x,y,s)函數(shù)在圖表的x或y位置處添加文本。text()函數(shù)的語法格式:plt.text(x,y,s,fontdict=None,ha,va,rotation,**kwargs)

【案例講解】示例4-7

2.設(shè)置標(biāo)注

使用plt.annotate()函數(shù)可在圖表中設(shè)置標(biāo)注。annotate()函數(shù)的語法格式:

plt.annotate(text,xy,*args,**kwargs)。函數(shù)中的參數(shù)說明見教材,【案例講解】示例4-83.設(shè)置網(wǎng)格線為圖表添加網(wǎng)格線的方法,即在plt.show()之前加上plt.grid()即可。grid()函數(shù)的語法格式:

plt.grid(b=None,

which='major',

axis='both',

**kwargs)函數(shù)中的參數(shù)說明見教材,【案例講解】示例4-94.3使用pyplot創(chuàng)建圖表【任務(wù)4-7】設(shè)置文本、標(biāo)注、網(wǎng)格線任務(wù)實(shí)施(1)打開Visualization項(xiàng)目,新建Python文件,輸入Python文件名為task4-7.py。(2)在PyCharm的代碼編輯區(qū)輸入task4-7.py程序代碼,介紹程序代碼設(shè)計(jì)思路。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-8】創(chuàng)建子圖任務(wù)描述

將一個(gè)Figure對象的繪圖區(qū)域劃分為三個(gè)子區(qū)域,在各個(gè)子區(qū)域中分別繪制正弦曲線、余弦曲線和線性函數(shù)曲線。知識(shí)儲(chǔ)備

創(chuàng)建子圖可以使用subplot()函數(shù),該函數(shù)的語法格式:subplot(numRows,numCols,plotNum)函數(shù)中的參數(shù)說明如下。numRows:表示將整個(gè)繪圖區(qū)域等分為numRows行。numCols:表示將整個(gè)繪圖區(qū)域等分為numCols列。plotNum:表示當(dāng)前選中要操作的區(qū)域。任務(wù)實(shí)施(1)打開Visualization項(xiàng)目,新建Python文件,輸入Python文件名為task4-8.py。(2)在PyCharm的代碼編輯區(qū)輸入task4-8.py程序代碼,介紹程序代碼設(shè)計(jì)思路。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-9】設(shè)置坐標(biāo)軸知識(shí)儲(chǔ)備

1.繪制軸線需導(dǎo)入的模塊

繪制軸線時(shí),需要先從Matplotlibaxisartist工具包中導(dǎo)入SubplotZero模塊,模塊導(dǎo)入方法如下:frommpl_toolkits.axisartist.axislinesimportSubplotZero

2.創(chuàng)建Axes對象

任務(wù)描述

繪制一條紅色、實(shí)線型、線寬為2的正弦曲線和一條綠色、破折線型、線寬為2的余弦曲線,并完成下列坐標(biāo)軸設(shè)置。

(1)設(shè)置x軸標(biāo)簽為“LabelX”,y軸標(biāo)簽為“LabelY”,x軸刻度為0~10之間,y軸范圍為[-2,4]。

(2)隱藏右軸和上軸。

(3)設(shè)置y=0的水平軸線的軸標(biāo)簽為“AxisZero”,標(biāo)簽顏色為藍(lán)色,帶箭頭的軸樣式。(4)在右側(cè)新建y軸,軸標(biāo)簽為“LabelY2”,偏移為10。4.3使用pyplot創(chuàng)建圖表【任務(wù)4-9】設(shè)置坐標(biāo)軸知識(shí)儲(chǔ)備3.隱藏坐標(biāo)軸

4.設(shè)置y=0的水平軸線

5.設(shè)置x=0的垂直軸線

6.設(shè)置坐標(biāo)軸標(biāo)簽、標(biāo)簽顏色及樣式

7.設(shè)置軸刻度

8.設(shè)置軸范圍和軸標(biāo)簽

9.創(chuàng)建新的坐標(biāo)軸任務(wù)實(shí)施(1)打開Visualization項(xiàng)目,新建Python文件,輸入Python文件名為task4-9.py。(2)在PyCharm的代碼編輯區(qū)輸入task4-9.py程序代碼,介紹程序代碼設(shè)計(jì)思路。4.4Matplotlib參數(shù)配置【任務(wù)4-10】Matplotlib配置文件知識(shí)儲(chǔ)備

在繪制圖形時(shí),有許多需要配置的屬性,例如顏色、字體、線型等是直接采用了Matplotlib的缺省配置。Matplotlib將缺省配置保存在“matplotlibrc”配置文件中,這些配置的屬性稱為rc配置或者rc參數(shù)。在Matplotlib中可以使用多個(gè)“matplotlibrc”配置文件,它們的搜索順序如下,順序靠前的配置文件將會(huì)被優(yōu)先采用。(1)當(dāng)前路徑:程序的當(dāng)前路徑。(2)用戶配置路徑:在用戶文件夾的“.matplotlib”目錄下,可通過環(huán)境變量MATPLOTLIBRC修改它的位置。(3)系統(tǒng)配置路徑:保存在Matplotlib的安裝目錄下的mpl-data中。通過代碼可以獲取用戶配置路徑和系統(tǒng)配置路徑。讀取配置文件中所有參數(shù)及其參數(shù)值,可在Matplotlib模塊載入時(shí)調(diào)用rc_params()函數(shù),并把得到的配置字典保存到rcParams變量中。

任務(wù)描述

了解Matplotlib配置文件的作用、數(shù)據(jù)結(jié)構(gòu)、保存目錄,以及讀取配置文件中所有參數(shù)及其參數(shù)值的方法。4.4Matplotlib參數(shù)配置【任務(wù)4-11】設(shè)置動(dòng)態(tài)rc參數(shù)知識(shí)儲(chǔ)備

1.直接修改rcParams變量值

【案例講解】示例4-10

2.使用rc()函數(shù)修改參數(shù)使用rc()函數(shù)可以修改“matplotlibrc”配置文件中的參數(shù),rc()函數(shù)的語法格式:

matplotlib.rc(group,**kwargs)函數(shù)中的參數(shù)說明見教材。

【案例講解】示例4-11任務(wù)描述了解直接修改rcParams變量值和使用rc()函數(shù)修改參數(shù)的方法。4.4Matplotlib參數(shù)配置【任務(wù)4-12】設(shè)置中文、負(fù)號(hào)顯示知識(shí)儲(chǔ)備

在利用Matplotlib繪制圖表時(shí),當(dāng)需要顯示中文或負(fù)號(hào)時(shí),可通過rcParams參數(shù)字典修改已經(jīng)加載的配置項(xiàng),其程序代碼如下:

importmatplotlib.pyplotasplt

#用黑體顯示中文

plt.rcParams['font.sans-serif']=['SimHei']

#顯示負(fù)號(hào)

plt.rcParams['axes.unicode_minus']=False任務(wù)描述了解利用Matplotlib繪制圖表時(shí),運(yùn)用rcParams參數(shù)設(shè)置中文、負(fù)號(hào)顯示的方法。4.5Matplotlib類別比較型圖表【任務(wù)4-13】單數(shù)據(jù)系列柱形圖――我國鐵路營業(yè)里程情況任務(wù)描述自1978年以來,中國鐵路營業(yè)里程由1978年的5.2萬公里發(fā)展到2019年的13.99萬公里,已形成了世界上現(xiàn)代化的鐵路網(wǎng)和發(fā)達(dá)的高鐵網(wǎng)。本任務(wù)要求根據(jù)國家統(tǒng)計(jì)局提供的2010—2019年我國鐵路營里程數(shù)據(jù),運(yùn)用Matplotlib的柱形圖來實(shí)現(xiàn)單數(shù)據(jù)系列的可視化。要求設(shè)置文本格式、x軸標(biāo)簽和刻度、y軸標(biāo)簽和取值范圍、圖表標(biāo)題、腳注、圖例,具體如下。(1)設(shè)置文本顯示格式是2位小數(shù)的浮點(diǎn)數(shù),水平居中。(2)設(shè)置x軸標(biāo)簽為“年份”,y軸標(biāo)簽為“鐵路營業(yè)里程”。(3)設(shè)置x軸刻度范圍為2010年~2019年,y軸取值范圍為0~14萬公里。(4)設(shè)置圖表主標(biāo)題為“2010—2019年我國鐵路營業(yè)里程”,副標(biāo)題為“單位:萬公里”。(5)設(shè)置腳注為“數(shù)據(jù)來源:國家統(tǒng)計(jì)局”。(6)設(shè)置圖例標(biāo)簽為“營業(yè)里程”,位置自動(dòng)放置。4.5Matplotlib類別比較型圖表【任務(wù)4-13】單數(shù)據(jù)系列柱形圖――我國鐵路營業(yè)里程情況知識(shí)儲(chǔ)備

柱形圖(Barchart)用于顯示一段時(shí)間內(nèi)的數(shù)據(jù)變化或各項(xiàng)之間的比較情況。在柱形圖中,類別型或序數(shù)型變量映射到橫軸的位置,數(shù)值型變量映射到矩形的高度。

通過pyplot中的bar()函數(shù)可直接繪制柱形圖系列,包括單數(shù)據(jù)系列柱形圖、多數(shù)據(jù)系列柱形圖、堆積柱形圖和百分比堆積柱形圖共4種常見類型。bar()函數(shù)的語法格式如下。

matplotlib.pyplot.bar(x,height,*,align='center',**kwargs)

matplotlib.pyplot.bar(x,height,width,*,align='center',**kwargs)

matplotlib.pyplot.bar(x,height,width,bottom,*,align='center',**kwargs)函數(shù)中的參數(shù)說明見教材。任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.5Matplotlib類別比較型圖表【任務(wù)4-14】多數(shù)據(jù)系列柱形圖―我國就業(yè)人員情況任務(wù)描述根據(jù)國家統(tǒng)計(jì)局提供的2007—2016年全部、城鎮(zhèn)和鄉(xiāng)村就業(yè)人員情況數(shù)據(jù),運(yùn)用Matplotlib的柱形圖來實(shí)現(xiàn)多數(shù)據(jù)系列的可視化。要求設(shè)置多數(shù)據(jù)系列柱形圖的顏色、文本顯示格式、x軸標(biāo)簽和刻度、y軸標(biāo)簽和取值范圍、圖表標(biāo)題、腳注、圖例,具體如下。(1)設(shè)置全部就業(yè)、城鎮(zhèn)就業(yè)和鄉(xiāng)村就業(yè)在柱形圖中的顏色分別為紅色、綠色和藍(lán)色。(2)設(shè)置文本顯示格式是整數(shù),水平居中。(3)設(shè)置x軸標(biāo)簽為“年份”,y軸標(biāo)簽為“人員”。(4)設(shè)置x軸刻度范圍為2007年~2016年,y軸取值范圍是30000萬人~80000萬人。(5)設(shè)置圖表主標(biāo)題為“2007—2016年全部、城鎮(zhèn)和鄉(xiāng)村就業(yè)人員情況”,副標(biāo)題為“單位:萬人”。(6)設(shè)置腳注為“數(shù)據(jù)來源:國家統(tǒng)計(jì)局”。(7)設(shè)置圖例標(biāo)簽為“全部就業(yè)”“城鎮(zhèn)就業(yè)”“鄉(xiāng)村就業(yè)”,位置為正中。4.5Matplotlib類別比較型圖表【任務(wù)4-14】多數(shù)據(jù)系列柱形圖―我國就業(yè)人員情況知識(shí)儲(chǔ)備

繪制多個(gè)數(shù)據(jù)系列的柱形圖時(shí),可依次使用pyplot中的bar()函數(shù)來分別繪制出不同數(shù)據(jù)系列的柱形圖,并通過width參數(shù)控制柱形的寬度。任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.5Matplotlib類別比較型圖表【任務(wù)4-15】堆積柱形圖――我國各類運(yùn)輸方式旅客周轉(zhuǎn)量情況任務(wù)描述依據(jù)國家統(tǒng)計(jì)局提供的2010—2019年我國公路、鐵路、民航和水運(yùn)等各類運(yùn)輸方式旅客周轉(zhuǎn)量情況表,運(yùn)用Matplotlib的堆積柱形圖來實(shí)現(xiàn)數(shù)據(jù)的可視化。要求設(shè)置不同數(shù)據(jù)系列在堆積柱形圖中的顏色、文本顯示格式、x軸標(biāo)簽和刻度、y軸標(biāo)簽和取值范圍、圖表標(biāo)題、腳注、圖例,具體如下。(1)設(shè)置公路旅客周轉(zhuǎn)量、鐵路旅客周轉(zhuǎn)量、民航旅客周轉(zhuǎn)量和水運(yùn)旅客周轉(zhuǎn)量在堆積柱形圖中的顏色分別為藍(lán)色、紅色、黃色和黑色。(2)設(shè)置文本顯示格式是2位小數(shù)的浮點(diǎn)數(shù),水平居中,垂直底部。(3)設(shè)置x軸標(biāo)簽為“年份”,y軸標(biāo)簽為“旅客周轉(zhuǎn)量”。(4)設(shè)置x軸刻度范圍為2010年~2019年,y軸取值范圍是0~41000億人公里。(5)設(shè)置圖表主標(biāo)題為“2010—2019年我國各類運(yùn)輸方式旅客周轉(zhuǎn)量”,副標(biāo)題為“單位:億人公里”。(6)設(shè)置腳注為“數(shù)據(jù)來源:國家統(tǒng)計(jì)局”。(7)設(shè)置圖例標(biāo)簽為“公路”“鐵路”“民航”“水運(yùn)”,位置為上中,分2列展示。4.5Matplotlib類別比較型圖表【任務(wù)4-15】堆積柱形圖――我國各類運(yùn)輸方式旅客周轉(zhuǎn)量情況知識(shí)儲(chǔ)備

堆積柱形圖顯示單個(gè)項(xiàng)目與整體之間關(guān)系,它比較各個(gè)類別的每個(gè)數(shù)值占總數(shù)值的大小,堆積柱形圖以二維垂直堆積矩形顯示數(shù)值。在繪制堆積柱形圖時(shí)要注意的3點(diǎn)如教材所示。任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.5Matplotlib類別比較型圖表【任務(wù)4-16】百分比堆積柱形圖――我國客運(yùn)量情況任務(wù)描述依據(jù)國家統(tǒng)計(jì)局提供的2010—2019年我國公路、鐵路、民航和水運(yùn)等客運(yùn)量情況數(shù)據(jù)表,運(yùn)用Matplotlib的百分比堆積柱形圖來實(shí)現(xiàn)數(shù)據(jù)的可視化。要求設(shè)置不同數(shù)據(jù)系列在百分比堆積柱形圖中的顏色、文本顯示格式、x軸標(biāo)簽和刻度、y軸標(biāo)簽和取值范圍、圖表標(biāo)題、腳注、圖例,具體如下。(1)設(shè)置公路客運(yùn)量、鐵路客運(yùn)量、民航客運(yùn)量和水運(yùn)客運(yùn)量在百分比堆積柱形圖中的顏色分別為藍(lán)色、紅色、黃色和黑色。(2)設(shè)置文本顯示格式是2位小數(shù)的浮點(diǎn)數(shù),水平居中,垂直底部。(3)設(shè)置x軸標(biāo)簽為“年份”,y軸標(biāo)簽為“客運(yùn)量”。(4)設(shè)置x軸刻度范圍是2010年~2019年,y軸取值范圍是0~110萬人。(5)設(shè)置圖表主標(biāo)題為“2010—2019年我國客運(yùn)量情況”,副標(biāo)題為“單位:萬人”。(6)設(shè)置腳注為“數(shù)據(jù)來源:國家統(tǒng)計(jì)局”。(7)設(shè)置圖例標(biāo)簽為“公路”“鐵路”“民航”“水運(yùn)”,位置為右下,分2列展示。4.5Matplotlib類別比較型圖表【任務(wù)4-16】百分比堆積柱形圖――我國客運(yùn)量情況知識(shí)儲(chǔ)備

百分比堆積柱形圖比較的是各個(gè)類別的每一個(gè)數(shù)值占總數(shù)值的百分比大小。百分比堆積柱形圖以二維垂直百分比堆積矩形顯示數(shù)值。在繪制百分比堆積柱形圖時(shí)要注意3點(diǎn)如教材所示。任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.5Matplotlib類別比較型圖表【任務(wù)4-17】條形圖――我國各類運(yùn)輸營業(yè)里程情況任務(wù)描述依據(jù)國家統(tǒng)計(jì)局提供的2019年我國各類運(yùn)輸營業(yè)里程情況表,運(yùn)用Matplotlib的條形圖來實(shí)現(xiàn)數(shù)據(jù)的可視化。要求設(shè)置條形圖上數(shù)值標(biāo)簽的文本顯示格式、x軸標(biāo)簽和取值范圍、y軸的刻度標(biāo)簽、圖表標(biāo)題、腳注,具體如下。(1)設(shè)置條形圖的數(shù)值標(biāo)簽文本顯示格式是1位小數(shù)的浮點(diǎn)數(shù),垂直居中。(2)設(shè)置x軸標(biāo)簽為“營業(yè)里程”,y軸刻度標(biāo)簽是各類運(yùn)輸營業(yè)里程的指標(biāo)數(shù)據(jù)。(3)設(shè)置x軸取值范圍是0~1000萬公里之間。(4)設(shè)置圖表主標(biāo)題為“2019年我國各類運(yùn)輸營業(yè)里程”,副標(biāo)題為“單位:萬公里”。(5)設(shè)置腳注為“數(shù)據(jù)來源:國家統(tǒng)計(jì)局”。4.5Matplotlib類別比較型圖表【任務(wù)4-17】條形圖――我國各類運(yùn)輸營業(yè)里程情況知識(shí)儲(chǔ)備在條形圖中,將類別型或序數(shù)型變量映射到縱軸的位置,將數(shù)值型變量映射到矩形的寬度。條形圖的柱形是橫向,從而導(dǎo)致與柱形相比,條形圖更加強(qiáng)調(diào)項(xiàng)目之間的大小對比。

繪制條形圖可使用pyplot中的barh()函數(shù),其語法格式如下。

matplotlib.pyplot.barh(y,width,height,left,*,align='center',**kwargs)函數(shù)中的參數(shù)說明見教材。任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.5Matplotlib類別比較型圖表【任務(wù)4-18】雷達(dá)圖――我國直轄市軟件項(xiàng)目收入情況任務(wù)描述

依據(jù)國家統(tǒng)計(jì)局提供的我國直轄市軟件項(xiàng)目收入情況表,運(yùn)用Matplotlib的雷達(dá)圖來實(shí)現(xiàn)數(shù)據(jù)的可視化,要求設(shè)置雷達(dá)圖中折線寬度和格式字符串、雷達(dá)圖取值范圍、添加網(wǎng)格線、填充顏色和透明度、圖表標(biāo)題、腳注、圖例,具體如下。

(1)設(shè)置雷達(dá)圖中折線寬度為2和格式字符串為“o-”。

(2)設(shè)置雷達(dá)圖取值范圍是0~10000億元之間,添加網(wǎng)格線。

(3)設(shè)置填充顏色為綠色,透明度為0.25。

(4)設(shè)置圖表標(biāo)題為“2019年我國直轄市軟件項(xiàng)目收入情況”。

(5)設(shè)置腳注為“數(shù)據(jù)來源:國家統(tǒng)計(jì)局”。

(6)設(shè)置圖例標(biāo)簽為“軟件產(chǎn)品收入/億元”“信息技術(shù)服務(wù)收入/億元”,位置自動(dòng)設(shè)置。4.5Matplotlib類別比較型圖表【任務(wù)4-18】雷達(dá)圖――我國直轄市軟件項(xiàng)目收入情況知識(shí)儲(chǔ)備

1.雷達(dá)圖雷達(dá)圖(RadarChart),又稱為蜘蛛圖、極地圖或星圖,如圖4-16所示。雷達(dá)圖用于比較多個(gè)定量變量(var1~var5),可用于查看哪些變量具有相似數(shù)值,或者每個(gè)變量中有沒有異常值。

2.極坐標(biāo)系

極坐標(biāo)系(PolarCoordinates)是指在平面內(nèi)由極點(diǎn)、極軸和極徑組成的坐標(biāo)系。

思考:Matplotlib通過什么語句將坐標(biāo)系設(shè)置為極坐標(biāo)系?

圖4-16成績分布雷達(dá)圖4.5Matplotlib類別比較型圖表【任務(wù)4-18】雷達(dá)圖――我國直轄市軟件項(xiàng)目收入情況知識(shí)儲(chǔ)備

3.使用Matplotlib繪制雷達(dá)圖

使用Matplotlib繪制雷達(dá)圖,其實(shí)就是在極坐標(biāo)系下繪制閉合的折線和面積圖。在繪制雷達(dá)圖時(shí),常用函數(shù)如下。

(1)使用numpy.linspace()函數(shù),在指定數(shù)據(jù)范圍(如0~360°)內(nèi)間隔生成均勻分布的數(shù)值序列。

(2)使用numpy.concatenate數(shù)組拼接函數(shù)實(shí)現(xiàn)對x軸和y軸數(shù)據(jù)的閉合處理。

(3)使用ax.fill()函數(shù)實(shí)現(xiàn)填充顏色的功能。

(4)使用ax.plot()函數(shù)繪制折線圖。任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.6Matplotlib數(shù)據(jù)關(guān)系型圖表【任務(wù)4-19】散點(diǎn)圖――廣告投入與銷售額之間的關(guān)系任務(wù)描述在市場競爭中,企業(yè)為了提高產(chǎn)品銷售額,經(jīng)常需要在電視、廣播和報(bào)紙等新聞媒體上投入大量廣告費(fèi)進(jìn)行產(chǎn)品宣傳,通過對不同新聞媒體上的廣告投入與銷售額之間的關(guān)系進(jìn)行數(shù)據(jù)分析,可發(fā)現(xiàn)廣告投入最佳渠道。現(xiàn)以Ad_sales.csv數(shù)據(jù)集為例,通過Matplotlib的散點(diǎn)圖來分析在電視、廣播和報(bào)紙3種媒體上的廣告投入與銷售額之間的關(guān)系。要求設(shè)置散點(diǎn)圖點(diǎn)的顏色和點(diǎn)的類型、x軸和y軸的標(biāo)簽及取值范圍、圖表標(biāo)題和圖例,具體如下。(1)設(shè)置“TV”散點(diǎn)圖點(diǎn)的顏色為紅色,點(diǎn)的類型用“o”表示,“radio”散點(diǎn)圖點(diǎn)的顏色為綠色,點(diǎn)的類型用“x”表示,“newspaper”散點(diǎn)圖點(diǎn)的顏色為藍(lán)色,點(diǎn)的類型用“v”表示。(2)設(shè)置x軸標(biāo)簽為“銷售額”,y軸標(biāo)簽為“廣告投入”。(3)設(shè)置x軸取值范圍為0~30萬元之間,y軸取值范圍為0~300萬元之間。(4)設(shè)置圖表主標(biāo)題為“廣告投入與銷售額之間的關(guān)系”,副標(biāo)題為“單位:萬元”。(5)設(shè)置圖例標(biāo)簽為“TV”“radio”“newspaper”,位置自動(dòng)設(shè)置。4.6Matplotlib數(shù)據(jù)關(guān)系型圖表【任務(wù)4-19】散點(diǎn)圖――廣告投入與銷售額之間的關(guān)系知識(shí)儲(chǔ)備散點(diǎn)圖(ScatterGraph)又稱為散點(diǎn)分布圖,是以一個(gè)變量為橫坐標(biāo),以另一個(gè)變量為縱坐標(biāo),利用坐標(biāo)點(diǎn)(散點(diǎn))的分布形態(tài)反映變量間的統(tǒng)計(jì)關(guān)系的圖形,通常用于顯示和比較數(shù)值。

思考:散點(diǎn)圖可以提供哪些關(guān)鍵信息?

pyplot中的scatter()函數(shù)可繪制散點(diǎn)圖,其語法格式如下。matplotlib.pyplot.scatter(x,y,s=None,c=None,marker=None,cmap=None,norm=None,vmin=None,vmax=None,alpha=None,linewidths=None,verts=None,edgecolors=None,hold=None,data=None,**kwargs)函數(shù)中的參數(shù)說明見教材。

任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.6Matplotlib數(shù)據(jù)關(guān)系型圖表【任務(wù)4-20】氣泡圖――廣告投入、銷售額及投入產(chǎn)出比的關(guān)系任務(wù)描述在分析數(shù)據(jù)之間的關(guān)系時(shí),除了使用散點(diǎn)圖外,還可以使用氣泡圖,可以通過氣泡面積大小來表示廣告投入與銷售額之比的數(shù)據(jù)。本任務(wù)是以Ad_sales.csv數(shù)據(jù)集為例,通過Matplotlib的氣泡圖來分析在電視、廣播和報(bào)紙3種媒體上的廣告投入和銷售額之間的相關(guān)性。要求設(shè)置氣泡的顏色、x軸和y軸的標(biāo)簽及取值范圍、圖表標(biāo)題和圖例,具體如下。(1)設(shè)置“TV”氣泡、“radio”氣泡和“newspaper”氣泡的顏色分別為紅色、綠色和藍(lán)色。(2)設(shè)置x軸標(biāo)簽為“銷售額”,y軸標(biāo)簽為“廣告投入”。(3)設(shè)置x軸取值范圍為0~30萬元之間,y軸取值范圍為0~300萬元之間。(4)設(shè)置圖表主標(biāo)題為“廣告投入、銷售額及投入產(chǎn)出比的關(guān)系”,副標(biāo)題為“單位:萬元”。(5)設(shè)置圖例標(biāo)簽為“TV”“radio”“newspaper”,位置自動(dòng)設(shè)置。4.6Matplotlib數(shù)據(jù)關(guān)系型圖表【任務(wù)4-20】氣泡圖――廣告投入、銷售額及占比的關(guān)系知識(shí)儲(chǔ)備氣泡圖是一種多變量的圖表,是散點(diǎn)圖的變體,也可以認(rèn)為是散點(diǎn)圖和百分比區(qū)域圖的組合。氣泡圖最基本的用法是使用3個(gè)變量來確定每個(gè)數(shù)據(jù)序列。與散點(diǎn)圖一樣,氣泡圖將兩個(gè)維度的數(shù)據(jù)值分別映射為笛卡兒坐標(biāo)系上的坐標(biāo)點(diǎn),其中x軸和y軸分別代表兩個(gè)不同維度的數(shù)據(jù),不同于散點(diǎn)圖的是每一個(gè)氣泡的面積代表第三個(gè)維度的數(shù)據(jù)。

利用scatter()函數(shù)可繪制氣泡圖,但是在運(yùn)用scatter()函數(shù)時(shí),需要設(shè)置s參數(shù),用于指定氣泡的大小。

任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.7Matplotlib數(shù)據(jù)分布型圖表【任務(wù)4-21】直方圖――學(xué)生期末綜合成績分布情況任務(wù)描述在對學(xué)生成績表中的期末綜合成績進(jìn)行分析時(shí),需要將0~100劃分為10個(gè)分?jǐn)?shù)段區(qū)間,然后分別統(tǒng)計(jì)出各分?jǐn)?shù)段中的人數(shù),并將統(tǒng)計(jì)分析結(jié)果用直方圖顯示。要求設(shè)置直方圖的參數(shù)、x軸和y軸的標(biāo)簽、圖表標(biāo)題,具體如下。(1)設(shè)置直方圖的顏色為紅色,邊框顏色為黑色,條形寬度為0.7,透明度為0.7,直方圖類型是條形直方圖。(2)設(shè)置x軸標(biāo)簽為“成績區(qū)間”,y軸標(biāo)簽為“人數(shù)”。(3)設(shè)置圖表標(biāo)題為“期末綜合成績分布”。4.7Matplotlib數(shù)據(jù)分布型圖表【任務(wù)4-21】直方圖――學(xué)生期末綜合成績分布情況知識(shí)儲(chǔ)備直方圖(Histogram)也稱為頻數(shù)分布直方圖,它的形狀類似柱形圖,卻有著與柱形圖完全不同的含義。直方圖涉及統(tǒng)計(jì)學(xué)的概念,首先要從數(shù)據(jù)中找出它的最大值和最小值,然后確定一個(gè)區(qū)間,使其包含全部測量數(shù)據(jù),將區(qū)間分成若干個(gè)小區(qū)間,統(tǒng)計(jì)測量結(jié)果出現(xiàn)在各個(gè)小區(qū)間的頻數(shù),以測量數(shù)據(jù)為橫坐標(biāo),頻數(shù)為縱坐標(biāo),劃分出各個(gè)小區(qū)間并統(tǒng)計(jì)出其對應(yīng)的頻數(shù)。在平面直角坐標(biāo)系的橫軸上標(biāo)出每個(gè)組的端點(diǎn),縱軸表示頻數(shù),每個(gè)矩形的高度代表對應(yīng)的頻數(shù)。

思考:直方圖的基本參數(shù)和主要作用。

pyplot中繪制直方圖的函數(shù)為hist(),其語法格式和參數(shù)見教材。

任務(wù)實(shí)施1.準(zhǔn)備工作和編程思路2.程序設(shè)計(jì)4.7Matplotlib數(shù)據(jù)分布型圖表【任務(wù)4-22】柱形圖――學(xué)生期末考試成績分布情況任務(wù)描述對學(xué)生期末考試成績分布情況進(jìn)行分析,要求采用柱形圖展示期末考試成績各分?jǐn)?shù)值的統(tǒng)計(jì)人數(shù)。要求設(shè)置柱形圖的顏色、邊框顏色、條形寬度、x軸和y軸的標(biāo)簽、圖表標(biāo)題,具體如下。(1)設(shè)置柱形圖的顏色為藍(lán)色,邊框顏色為白色,條形寬度為1。(2)設(shè)置x軸標(biāo)簽為“成績”,y軸標(biāo)簽為“人數(shù)”。(3)設(shè)置圖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論