大數據可視化 第2版 課件 第12章 Python可視化基礎_第1頁
大數據可視化 第2版 課件 第12章 Python可視化基礎_第2頁
大數據可視化 第2版 課件 第12章 Python可視化基礎_第3頁
大數據可視化 第2版 課件 第12章 Python可視化基礎_第4頁
大數據可視化 第2版 課件 第12章 Python可視化基礎_第5頁
已閱讀5頁,還剩51頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

面向新工科高等院校大數據專業系列教材大數據可視化(第2版)大數據可視化(第2版)第12章Python可視化基礎可視化是一種強大的工具,用于以直觀和可理解的方式傳達復雜的數據模式和關系。它們在數據分析中發揮著至關重要的作用,提供了通常難以從原始數據或傳統數字表示中辨別出來的見解。【導讀案例】數據分析和機器學習的可視化圖表11例Python語言是由荷蘭人吉多·范羅蘇姆在1980年代末設計的,于1994年1月正式發布,經過近三十年的發展演進,如今已經成為主流的程序設計語言。第12章Python可視化基礎01Python編程語言02Python開發環境目錄/CONTENTS03Python可視化工具—PyEchartsPART01Python編程語言Python是一種解釋型程序語言,即其程序不需要編譯,運行時才被翻譯成機器執行的語言,每執行一次都要翻譯一次。了解Python的一個好方法是使用交互式shell(俗稱“殼”,用來區別于“核”)進行操作,shell是“為使用者提供操作界面”的軟件。Python標準版包括一個IDLE程序,它提供了一個shell以及編輯Python程序的工具。12.1

Python編程語言Python支持多種程序設計范式,包括程序式、結構式、面向對象、函數式、腳本式,其語法簡潔,易于學習,具備了垃圾收集、動態類型檢查、異常處理機制等特色。Python的程序庫模塊多得不計其數,游戲、多媒體、數學運算、視頻處理、系統程序、網站網頁、機器人等等領域,都可見其運用之處,廣受各界采用。12.1.1

Python的語言特色Python的核心概念不多,語法簡潔清晰,程序代碼清楚易懂,它強制使用空白符作為語句縮進,開發軟件時易于編寫功能,之后也易于維護修改,提供了一致的程序設計模型。與C、C++、Java等程序語言相比,Python的開發速度快,相同功能需要的程序代碼行數較少。所以,使用Python可以提高程序開發人員與軟件工程師的生產力,在較短時間內完成較多功能。12.1.1

Python的語言特色Python常被昵稱為膠水語言,它能夠把用其他語言制作的各種模塊(尤其是C/C++)很輕松地聯結在一起。常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然后對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++重寫,而后封裝為Python可以調用的擴展類庫。但在使用擴展類庫時需要考慮平臺問題,某些平臺可能不提供跨平臺的實現。12.1.1

Python的語言特色Python是純粹的自由軟件,源代碼和解釋器CPython遵循GNU通用公共許可證許可,為此成立了非營利組織Python軟件基金會,開發人員也逐漸演變成Python開發團隊,并擁有廣大的社團。Python語言的各項開發工作都記錄在Python功能增進建議書之中,規范并定義各種擴充與延伸功能的技術規格,讓整個Python社區擁有共同遵循的原則和依據。12.1.2

Python語言的版本目前在用的Python版本分為2.x與3.x(又稱為Python3000或py3k),兩個版本不完全兼容。學習與查詢相關數據時,應看清楚適用版本。雖然3.x版已推出一段時日,但仍有很多人以2.x版開發程序,使用者眾多,很多程序代碼只相容于2.x版,某些程序庫模塊也尚未更新提供3.x的版本。Python的2.7版本發布至今已相當普及,也是2.x的最后一版,該版本進入了糾錯和維護的穩定狀態。關于Python各版本之間功能與特色的差異詳情,可以到Python官方網站的文件區(/)查詢。本書相關各章在介紹時使用的是Python版本3.12。12.1.2

Python語言的版本PART02Python開發環境為執行Python程序,需要搭建好Python程序的運行環境。理論上,只要Python程序運行環境的每一個具體實現都遵守Python語言的規格,而且程序員也按照標準編寫Python程序,那么所編寫的程序代碼不管在哪一個程序運行環境里都應該能正確無誤地得到執行。換句話說,在Windows上編寫的Python程序,也可以放到Linux上執行,只要兩處都安裝了相兼容的Python運行環境即可,因此Python具備良好的可移植性。12.2

Python開發環境常見的Python實施有CPython、StacklessPython、UnladenSwallow、IronPython、Jython、PyPy等等,各有其獨特之處,例如CPython是Python官方團隊以C語言編寫開發的運行環境,具有標準地位,其源代碼完全開放,可移植性最高。另外有些實施,如ActivePython、PythonXY、AnacondaPython等,是把CPython重新包裝,再加入其他的程序庫,專供特定領域使用,例如科學計算、數據分析與管理、數據庫運用等。本書的Python程序范例都基于Windows和CPython環境來搭建Python3.x開發環境。12.2

Python開發環境請按照下列步驟完成安裝并進行簡單操作。步驟1:在計算機中為Python語言建立一個文件夾(例如:\Python)。步驟2:下載Python軟件。互聯網上有很多地方提供了下載服務。這里,我們選擇在Python的官網上下載python。打開Python官網()。選擇下載Windows的最新版本,按屏幕提示,將Python軟件下載到指定的文件夾。12.2.1安裝Python開發環境步驟3:下載完成后單擊執行下載的exe程序(打開文件),進入安裝界面。(安裝完成后,若再次單擊該程序,可執行卸載Python的操作。)在選擇安裝時,可以把下方的“AddPython.exetoPATH”勾選上,直接默認把用戶變量添加上,后續不用再添加。

圖12-16Python安裝界面12.2.1安裝Python開發環境安裝界面中可以選擇默認安裝或者自定義安裝。由于默認安裝路徑層次比較深,可以選擇自定義安裝,例如將Python程序系統安裝在前面定義的“\Python”目錄中,以方便后續查找。最后界面如圖所示,單擊Close完成安裝。

圖12-17完成安裝12.2.1安裝Python開發環境步驟4:安裝成功后,在安裝目錄可以看到Python安裝文件相關信息,在“開始”菜單單擊“Python3.12”>“Python3.12(32-bit)”命令,打開Python軟件即可使用。

圖12-18Python操作界面12.2.1安裝Python開發環境安裝后,Python3.x版缺省設置的安裝路徑是C:\Python。Windows“開始”菜單的“Python3.12”子菜單中會有“IDLE(Python3.1232-bit)”命令,這是一款簡易的圖形化開發編輯器。請分析并記錄:(1)你實際選擇安裝的Python軟件版本是:(2)你是否完成Python軟件的安裝?若未完成,則請簡單分析原因是什么?12.2.1安裝Python開發環境安裝后的Python程序運行環境中主要部分是“解釋器”,解釋器負責執行程序,把Python程序交給它,它解析程序代碼、檢查語法有無錯誤、根據程序語義去完成任務(例如計算某個數學公式)、把數據存回文件、通過網絡請求到某網站等等,而這些具體功能都會由某個程序庫負責;解釋器與眾多程序庫再加上Python運行環境的其他部分,將會往下層存取操作系統提供的服務,完成程序代碼定義的功能。圖12-19運行環境架構的簡化示意圖12.2.1安裝Python開發環境Python程序運行環境可細分出許多部分,解釋器的功能也可再細分,它是Python程序運行環境的門戶。編寫Python程序時,直接面對的就是解釋器。Python具有豐富龐大的程序庫,例如處理各種數據形式的程序庫、網絡連線的程序庫、存取文件系統的程序庫等。12.2.1安裝Python開發環境我們通過向Python解釋器發出指令來指揮計算機內部的計算過程。可以用交互模式啟動Python解釋器(shell)。shell允許用戶在其中鍵入Python命令,然后顯示執行結果。啟動shell的具體細節因不同的Python安裝而異。一般情況下,我們會使用IDLE應用程序,它提供的Pythonshell可以幫助我們創建和編輯Python程序。12.2.2執行Python程序在Windows“開始”菜單中單擊“IDLE(Python3.1264-bit)”命令,屏幕顯示IDLE窗口。

圖12-20PythonIDLE窗口12.2.2執行Python程序第一次啟動IDLE時所看到的具體的啟動消息,取決于當前正在運行的Python版本和正在使用的系統。重要的部分是圖中最后一行的>>>,這是Python提示符,表示Python解釋器正在進行展示交互式會話,等待給它的命令。在編程語言中,一個完整的命令稱為語句(注意,不要使用中文的句號、引號等符號)。12.2.2執行Python程序下面是與Pythonshell交互的例子:>>>print("Hello,World!")Hello,World!>>>print(2+3)5>>>print("2+3=",2+3)2+3=512.2.2執行Python程序這里,我們嘗試了三個使用Pythonprint語句的例子。第一個print語句要求Python顯示文本短語“Hello,World!”,Python在下一行做出響應,打印出該短語。第二個print語句要求Python打印2與3之和。第三個print結合了這兩個想法。Python打印出引號中的部分“2+3=”,然后是2+3的結果,即5。建議讀者啟動自己的Pythonshell并嘗試執行這些例子。12.2.2執行Python程序Python允許將一系列語句放在一起,創建一個全新的命令或函數。下面的例子創建了一個名為hello的新函數(最后可以打兩次回車鍵結束):>>>defhello():print("Hello")print("計算機很有趣!")>>>12.2.2執行Python程序第一行告訴Python定義一個新函數,命名為hello。接下來兩行縮進,表明它們是hello函數的一部分。最后的空白行(通過按兩次回車鍵獲得)讓Python知道定義己完成,并且shell用另一個提示符進行響應。注意,鍵入定義并不會導致Python打印任何東西。我們告訴Python,當hello函數用作命令時應該發生什么,但實際上并沒有要求Python執行它。12.2.2執行Python程序鍵入函數名稱并跟上括號,函數就被調用了。下面是使用hello命令時發生的事情:>>>hello()Hello計算機很有趣!>>>這時,hello函數定義中的兩個print語句按順序執行了。12.2.2執行Python程序命令可以有可變部分,稱為參數,放在括號中。讓我們看一個使用參數、自定義問候語的例子。先是定義:>>>defgreet(person):print("Hello",person)print("Howareyou?")12.2.2執行Python程序現在我們可以使用定制的問候。>>>greet("John")HelloJohnHowareyou?>>>greet("Emily")HelloEmilyHowareyou?>>>12.2.2執行Python程序使用greet時,可以發送不同的名稱,從而自定義結果。print是Python中的一個內置函數,當調用print函數時,括號中的參數告訴函數要打印什么。注意到,執行一個函數時,括號必須包含在函數名之后,即使沒有給出參數也是如此。例如,可以使用print而不使用任何參數,創建一個空白的輸出行。>>>print()>>>12.2.2執行Python程序但是如果只鍵入函數的名稱,省略括號,函數將不會真正執行。這時,交互式Python會話將顯示一些輸出,表明名稱所引用的函數,如下面的交互所示:>>>greet<functiongreetatOx8393aec>>>>print<built-infunctionprint)這里的0x8393aec是在計算機存儲器中的位置(地址),其中恰好存儲了greet函數的定義。12.2.2執行Python程序如果你在自己的計算機上嘗試,肯定會看到不同的地址。如果將函數交互輸入到Pythonshell中,當退出shell時,定義會丟失,下次希望再次使用它們時必須重新鍵入。12.2.2執行Python程序實際上,程序的創建通常是將定義寫入獨立的文件,稱為“模塊”或“腳本”。此文件保存在輔助存儲器中,可以反復使用。模塊文件是一個文本文件,可以用任何應用程序來編輯文本,例如記事本或文字處理程序,只要將程序保存為“純文本”文件即可。有一種特殊類型的應用稱為集成開發環境(IDE)簡化了這個過程,它們專門設計用于幫助程序員編寫程序,包括自動縮進、顏色高亮顯示和交互式開發等功能。作為Pythonshell的IDLE就是一個簡單卻完整的開發環境。12.2.2執行Python程序我們來編寫并運行一個完整的程序,以說明模塊文件的使用。要將此程序鍵入IDLE,應選擇File/NewFile菜單選項。這將打開一個空白(非shell)窗口,可以在其中鍵入程序。下面是程序的Python代碼:12.2.2執行Python程序【程序實例12-1】一個簡單的示例程序。#chaos.py#一個隨意編寫的簡單程序,沒有特定的目的defmain():print("該程序說明了一個隨意的功能。")x=eval(input("輸入0到1之間的數字:"))foriinrange(10):x=3.9*x*(1-x)print(x)main()12.2.2執行Python程序在IDLE中鍵入該程序之后,從菜單中選擇File/Save,并保存為chaos.py。擴展名.py表示這是一個Python模塊。保存程序時,因為IDLE默認在系統的Python文件夾中啟動,建議將所有Python程序都放在一個專用的個人文件夾中。程序實例12-1中包含幾行代碼,定義了一個新函數main(程序通常放在一個名為main的函數中),文件的最后一行是調用此函數的命令。一旦我們將一個程序保存在這樣的模塊文件中,就可以隨時運行它。12.2.2執行Python程序程序能以許多不同的方式運行,這取決于你使用的實際操作系統和編程環境。如果使用的是窗口系統,可以通過單擊(或雙擊)模塊文件的圖標來運行Python程序。在命令行情況下,可以鍵入像pythonchaos.py這樣的命令。使用IDLE時,只需打開該程序文件,從模塊窗口菜單中選擇Run/RunModule即可運行程序。12.2.2執行Python程序IDLE運行程序時,控制將切換到shell窗口。下面是看起來的樣子:>>>=======================RESTART=======================該程序說明了一個隨意的功能。輸入0到1之間的數字:.250.731250.766441406250.69813501043853750.82189581879023040.57089401919693170.95539874836420990.1661867219544130.54041791206179260.96862893029980420.11850901017563877>>>12.2.2執行Python程序第一行是來自IDLE的通知,表明shell已重新啟動。IDLE在每次運行程序時都會這樣做,使程序運行在一個干凈的環境中。然后,Python從上至下逐行運行該模塊的各條語句(命令),就像在Python提示符下逐行鍵入它們一樣。模塊中的def會引導Python創建main函數,模塊的最后一行導致Python調用main函數,從而運行程序。在這個例子中鍵入了“.25”,然后打印出10個數字的序列。12.2.2執行Python程序注意到,Python有時會在存儲模塊文件的(子)文件夾中創建另一個名為pycache的文件夾,這是Python存儲伴隨文件的地方,伴隨文件的擴展名為.pyc。在本例中,Python可能會創建一個名為chaos.pyc的文件,這是Python解釋器使用的中間文件。從技術上講,Python采用混合編譯/解釋的過程。模塊文件中的Python源代碼被編譯為較原始的指令,稱為字節代碼,然后解釋這個字節代碼(.pyc)。12.2.2執行Python程序如果有.pyc文件可用,則第二次運行模塊就會更快。如果刪除字節代碼文件,Python會根據需要自動重新創建它們。在IDLE下運行模塊,會將程序加載到shell窗口中。只需在shell提示符下鍵入命令main(),就可以要求Python再次運行該程序。12.2.2執行Python程序PART03Python可視化工具—PyEcharts數據可視化是提高用戶對數據的理解程度,創新架構,增進體驗的重要一環,富有表現力的Python語言可以發揮很大作用,PyEchart第三方庫就是在這樣的背景下誕生的。

圖12-21PyEchat繪圖示例12.3

Python可視化工具——PyEchartsEcharts是一個由百度開源的數據可視化工具,它是一個純JavaScript的商業級數據圖表庫,憑借著良好的交互性,精巧的圖表設計,可以為用戶提供直觀生動,可交互,可高度個性化定制的數據可視化圖表,賦予了用戶對數據進行挖掘整合的能力。Echarts的可視化類型很多,但是它需要通過導入js庫在JavaWeb項目上運行,而PyEcharts則可以很好地運行在Python環境下。PyEcharts庫是一個用于生成Echarts圖表的類庫,它是一款將Python程序設計語言與可視化JS工具Echarts結合起來的強大的開源的數據可視化工具。

PyEcharts=Python+Echarts12.3

Python可視化工具——PyEcharts安裝PyEcharts的操作步驟如下:步驟1:打開命令行(運行)窗口。步驟2:在“運行”對話框中輸入(注意圖12-16中提到的路徑設置):pipinstallpyecharts步驟3:當出現如圖所示的信息時,即代表下載成功,可以繼續下一步的操作。

圖12-22安裝提示12.3.1安裝PyEcharts使用unicode編碼來處理字符串和文件,而Python3.x默認使用unicode編碼。12.3.2應用實例【程序實例12-2】柱狀圖-Bar。#導入柱狀圖-Barfrompyecharts.chartsimportBarfrompyechartsimportoptionsasopts#設置柱狀圖的主標題與副標題#設置行名columns=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]12.3.2應用實例#設置數據data1=[2.0,4.9,7.0,23.2,25.6,76.7,135.6,162.2,32.6,20.0,6.4,3.3]data2=[2.6,5.9,9.0,26.4,28.7,70.7,175.6,182.2,48.7,18.8,6.0,2.3]#創建柱狀圖對象bar=Bar()bar.set_global_opts(title_opts=opts.Titl

溫馨提示

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

評論

0/150

提交評論