Python財(cái)經(jīng)應(yīng)用-編程基礎(chǔ)、數(shù)據(jù)分析與可視化課件 第7章-Matplotlib庫(kù)與數(shù)據(jù)可視化-7.3Matplotlib庫(kù)繪圖的基本流程-7.4使用Matplotlib庫(kù)繪圖常用圖表_第1頁(yè)
Python財(cái)經(jīng)應(yīng)用-編程基礎(chǔ)、數(shù)據(jù)分析與可視化課件 第7章-Matplotlib庫(kù)與數(shù)據(jù)可視化-7.3Matplotlib庫(kù)繪圖的基本流程-7.4使用Matplotlib庫(kù)繪圖常用圖表_第2頁(yè)
Python財(cái)經(jīng)應(yīng)用-編程基礎(chǔ)、數(shù)據(jù)分析與可視化課件 第7章-Matplotlib庫(kù)與數(shù)據(jù)可視化-7.3Matplotlib庫(kù)繪圖的基本流程-7.4使用Matplotlib庫(kù)繪圖常用圖表_第3頁(yè)
Python財(cái)經(jīng)應(yīng)用-編程基礎(chǔ)、數(shù)據(jù)分析與可視化課件 第7章-Matplotlib庫(kù)與數(shù)據(jù)可視化-7.3Matplotlib庫(kù)繪圖的基本流程-7.4使用Matplotlib庫(kù)繪圖常用圖表_第4頁(yè)
Python財(cái)經(jīng)應(yīng)用-編程基礎(chǔ)、數(shù)據(jù)分析與可視化課件 第7章-Matplotlib庫(kù)與數(shù)據(jù)可視化-7.3Matplotlib庫(kù)繪圖的基本流程-7.4使用Matplotlib庫(kù)繪圖常用圖表_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Python財(cái)經(jīng)應(yīng)用:編程基礎(chǔ)、數(shù)據(jù)分析與可視化第七章Matplotlib庫(kù)與數(shù)據(jù)可視化中國(guó)農(nóng)業(yè)大學(xué)李輝Matplotlib庫(kù)與數(shù)據(jù)可視化01數(shù)據(jù)可視化概述02Matplotlib庫(kù)的概述03Matplotlib庫(kù)繪圖的基本流程04使用Matplotlib庫(kù)繪圖常用圖表05圖表輔助元素的設(shè)置Matplotlib庫(kù)與數(shù)據(jù)可視化01數(shù)據(jù)可視化概述02Matplotlib庫(kù)的概述03Matplotlib庫(kù)繪圖的基本流程04使用Matplotlib庫(kù)繪圖常用圖表05圖表輔助元素的設(shè)置7.3Matplotlib庫(kù)繪圖的基本流程第七章Matplotlib庫(kù)與數(shù)據(jù)可視化Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程通過(guò)pipinstallmatplotlib命令進(jìn)行自動(dòng)安裝Matplotlib庫(kù)后,用Matplotlib畫(huà)圖一般需要如下5個(gè)流程:導(dǎo)入模塊、創(chuàng)建畫(huà)布、制作圖形、美化圖片(添加各類標(biāo)簽和圖例)、保存并顯示圖表。1.導(dǎo)入matplotlib.pyplot模塊importmatplotlib.pyplotaspltMatplotlib使用rc參數(shù)定義圖形的各種默認(rèn)屬性,如畫(huà)布大小、線條樣式、坐標(biāo)軸、文本、字體等,rc參數(shù)存儲(chǔ)在字典變量中,根據(jù)需要可以修改默認(rèn)屬性。例如,使用以下設(shè)置語(yǔ)句可以在圖表中正常顯示中文或坐標(biāo)軸的負(fù)號(hào)刻度。

plt.rcParams['font.sans-serif']=['SimHei']#設(shè)置字體正常顯示中文plt.rcParams['axes.unicode_minus']=False#設(shè)置坐標(biāo)軸正常顯示負(fù)號(hào)Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程通過(guò)pipinstallmatplotlib命令進(jìn)行自動(dòng)安裝Matplotlib庫(kù)后,用Matplotlib畫(huà)圖一般需要如下5個(gè)流程:導(dǎo)入模塊、創(chuàng)建畫(huà)布、制作圖形、美化圖片(添加各類標(biāo)簽和圖例)、保存并顯示圖表。1.導(dǎo)入matplotlib.pyplot模塊importmatplotlib.pyplotasplt2.創(chuàng)建畫(huà)布在使用Matplotlib進(jìn)行繪圖之前,需要?jiǎng)?chuàng)建一個(gè)繪圖對(duì)象。如果未顯式創(chuàng)建,調(diào)用繪圖函數(shù)時(shí),Matplotlib會(huì)自動(dòng)生成一個(gè)。deffigure(num=None,figsize=None,dpi=None,facecolor=None,edgecolor=None,frameon=True,FigureClass=Figure,clear=False,**kwargs)Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程2.創(chuàng)建畫(huà)布在使用Matplotlib進(jìn)行繪圖之前,需要?jiǎng)?chuàng)建一個(gè)繪圖對(duì)象。如果未顯式創(chuàng)建,調(diào)用繪圖函數(shù)時(shí),Matplotlib會(huì)自動(dòng)生成一個(gè)。deffigure(num=None,figsize=None,dpi=None,facecolor=None,edgecolor=None,frameon=True,FigureClass=Figure,clear=False,**kwargs)參數(shù)說(shuō)明:num:可選參數(shù),用于指定窗口的標(biāo)識(shí)符,若不提供,則自動(dòng)遞增。figsize:可選參數(shù),指定畫(huà)布的大小,默認(rèn)為rcParams中的設(shè)置。dpi:可選參數(shù),指定畫(huà)布的分辨率,默認(rèn)為rcParams中的設(shè)置。facecolor:可選參數(shù),指定畫(huà)布的背景顏色,默認(rèn)為rcParams中的設(shè)置。edgecolor:可選參數(shù),指定畫(huà)布邊框的顏色,默認(rèn)為rcParams中的設(shè)置。frameon:可選參數(shù),是否繪制畫(huà)布的邊框,默認(rèn)為T(mén)rue。FigureClass:可選參數(shù),用于指定自定義的圖形類。clear:可選參數(shù),若為T(mén)rue且窗口已存在,則清空窗口內(nèi)容。Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程3.繪制圖表通過(guò)調(diào)用plot函數(shù),可以在當(dāng)前繪圖對(duì)象中繪制圖表。plt.plot(x,y,label,color,linewidth,linestyle)或plt.plot(x,y,fmt,label)參數(shù)說(shuō)明:x、y:圖表中數(shù)據(jù)點(diǎn)的X軸和Y軸坐標(biāo)。label:為曲線設(shè)置圖例名稱。color:指定曲線的顏色。linewidth:指定曲線的寬度。linestyle:指定曲線的樣式。fmt:格式化參數(shù),用于指定顏色和線型。Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程4.添加標(biāo)簽和圖例繪制圖表后,需要添加標(biāo)簽和圖例以增強(qiáng)圖表的可讀性。相關(guān)函數(shù)如下:plt.xlabel:設(shè)置x軸標(biāo)簽。plt.ylabel:設(shè)置y軸標(biāo)簽。plt.title:設(shè)置圖表標(biāo)題。plt.xlim:設(shè)置x軸范圍。plt.ylim:設(shè)置y軸范圍。plt.xticks:設(shè)置x軸刻度。plt.yticks:設(shè)置y軸刻度。plt.legend:添加圖例。Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程5.保存和顯示圖表完成圖表的繪制和修飾后,可以使用以下函數(shù)保存和顯示圖表:plt.savefig:將圖表保存為圖片文件。plt.show:在屏幕上顯示圖表?!纠?-1】利用Matplotlib繪制折線圖,展現(xiàn)某企業(yè)2024年上半年收入(萬(wàn)元):24、32、40、36、58、55。Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程【例7-1】

#1.導(dǎo)入模塊importmatplotlib.pyplotasplt#2.創(chuàng)建畫(huà)布plt.figure(figsize=(10,10),dpi=100)#3.繪制折線圖plt.plot([1,2,3,4,5,6],[24,32,40,36,58,55])#4.添加標(biāo)簽plt.xlabel("Month")plt.ylabel("Income")#5.顯示圖像plt.show()Matplotlib庫(kù)繪圖的基本流程——?jiǎng)?chuàng)建簡(jiǎn)單圖表的基本流程運(yùn)行結(jié)果如圖所示:Matplotlib庫(kù)繪圖的基本流程——繪制子圖的基本流程在Matplotlib中,可以將—個(gè)繪圖對(duì)象分為幾個(gè)繪圖區(qū)域,在每個(gè)繪圖區(qū)域中可以繪制不同的圖像,這種繪圖形式稱為創(chuàng)建子圖。創(chuàng)建子圖可以使用subplot函數(shù):subplot(numRows,numCols,plotNum)參數(shù)說(shuō)明:numRows:表示將整個(gè)繪圖區(qū)域等分為numRows行。numCols:表示將整個(gè)繪圖區(qū)域等分為numCols列。plotNum:表示當(dāng)前選中要操作的區(qū)域。Matplotlib庫(kù)繪圖的基本流程——繪制子圖的基本流程subplot函數(shù)的作用:將整個(gè)繪圖區(qū)域等分為numRows(行)*numCols(列)個(gè)子區(qū)域,然后按照從左到右、從上到下的順序?qū)γ總€(gè)子區(qū)域進(jìn)行編號(hào),左上的子區(qū)域的編號(hào)為1。如果numRows、numCols和plotNum這3個(gè)數(shù)都小于10,可以把它們縮寫(xiě)為一個(gè)整數(shù)。例如subplot(223)和subplot(2,2,3)是相同的。subplot()在plotNum指定的區(qū)域中創(chuàng)建圖形。如果新創(chuàng)建的圖形和先前創(chuàng)建的圖形重疊,則先前創(chuàng)建的圖形將被刪除。Matplotlib庫(kù)與數(shù)據(jù)可視化01數(shù)據(jù)可視化概述02Matplotlib庫(kù)的概述03Matplotlib庫(kù)繪圖的基本流程04使用Matplotlib庫(kù)繪圖常用圖表05圖表輔助元素的設(shè)置7.4使用Matplotlib庫(kù)繪圖常用圖表第七章Matplotlib庫(kù)與數(shù)據(jù)可視化使用Matplotlib庫(kù)繪圖常用圖表——繪制直方圖直方圖:又稱質(zhì)量分布圖,是統(tǒng)計(jì)報(bào)告圖的一種,由一系列高度不等的縱向條紋或線段表示數(shù)據(jù)分布的情況,一般用橫軸表示數(shù)據(jù)所屬類別,縱軸表示分布情況(數(shù)量或占比)。pyplot模塊的hist函數(shù)用于繪制直方圖:matplotlib.pyplot.hist(x,bins=None,range=None,density=None,histtype='bar',color=None,label=None,...,**kwargs)參數(shù)說(shuō)明:x:數(shù)組或序列,直方圖中的數(shù)據(jù)點(diǎn)。bins:整數(shù)或序列,用于確定直方圖的柱子數(shù)量和范圍。如果是整數(shù),則表示柱子的數(shù)量;如果是序列,則給出了柱子的邊界。range:元組(min,max),表示包含直方圖數(shù)據(jù)的范圍。如果None,則范圍由數(shù)據(jù)的最小值和最大值確定。使用Matplotlib庫(kù)繪圖常用圖表——繪制直方圖直方圖:又稱質(zhì)量分布圖,是統(tǒng)計(jì)報(bào)告圖的一種,由一系列高度不等的縱向條紋或線段表示數(shù)據(jù)分布的情況,一般用橫軸表示數(shù)據(jù)所屬類別,縱軸表示分布情況(數(shù)量或占比)。pyplot模塊的hist函數(shù)用于繪制直方圖:matplotlib.pyplot.hist(x,bins=None,range=None,density=None,histtype='bar',color=None,label=None,...,**kwargs)參數(shù)說(shuō)明:density:布爾值,如果為T(mén)rue,則直方圖的值將進(jìn)行歸一化處理,以形成概率密度而不是計(jì)數(shù)。histtype:字符串,指定直方圖的類型。默認(rèn)為'bar',表示柱狀直方圖。其他選項(xiàng)包括'barstacked'(堆疊柱狀圖),'step'(階梯圖),'stepfilled'(填充的階梯圖)等。color:顏色或顏色序列,指定直方圖的顏色。可以是單個(gè)顏色值,也可以是一個(gè)顏色列表,用于為不同的柱子指定顏色。使用Matplotlib庫(kù)繪圖常用圖表——繪制直方圖直方圖:又稱質(zhì)量分布圖,是統(tǒng)計(jì)報(bào)告圖的一種,由一系列高度不等的縱向條紋或線段表示數(shù)據(jù)分布的情況,一般用橫軸表示數(shù)據(jù)所屬類別,縱軸表示分布情況(數(shù)量或占比)。pyplot模塊的hist函數(shù)用于繪制直方圖:matplotlib.pyplot.hist(x,bins=None,range=None,density=None,histtype='bar',color=None,label=None,...,**kwargs)參數(shù)說(shuō)明:label:字符串或序列,為直方圖添加圖例標(biāo)簽。...:這里省略了一些其他參數(shù),例如align(柱子的對(duì)齊方式),orientation(直方圖的方向,默認(rèn)為垂直),rwidth(柱子的相對(duì)寬度)等。**kwargs:其他的關(guān)鍵字參數(shù),可以用來(lái)進(jìn)一步控制直方圖的樣式和屬性,例如edgecolor(柱子邊緣的顏色),linewidth(柱子邊緣的線寬),alpha(透明度)等。使用Matplotlib庫(kù)繪圖常用圖表——繪制直方圖【例7-3】利用hist函數(shù)繪制“大數(shù)據(jù)211班成績(jī)表”中“數(shù)據(jù)結(jié)構(gòu)”成績(jī)分布的直方圖。

importpandasaspdimportmatplotlib.pyplotaspltdf=pd.read_excel("./大數(shù)據(jù)211班成績(jī)表.xlsx")x=df['數(shù)據(jù)結(jié)構(gòu)']plt.rcParams['font.sans-serif']=['SimHei']plt.xlabel('分?jǐn)?shù)')plt.ylabel('學(xué)生數(shù)量')#顯示圖表題plt.title("大數(shù)據(jù)211班數(shù)據(jù)結(jié)構(gòu)成績(jī)分布直方圖")plt.hist(x,bins=[0,20,40,60,80,100],facecolor='b',edgecolor='black',alpha=0.5)plt.show()使用Matplotlib庫(kù)繪圖常用圖表——繪制直方圖運(yùn)行結(jié)果如下:使用Matplotlib庫(kù)繪圖常用圖表——繪制散點(diǎn)圖散點(diǎn)圖:亦稱散布圖,是一種通過(guò)在直角坐標(biāo)系中布置坐標(biāo)點(diǎn)(散點(diǎn))來(lái)揭示兩個(gè)特征之間統(tǒng)計(jì)關(guān)系的圖表。它以一個(gè)特征為橫軸,另一個(gè)特征為縱軸,通過(guò)點(diǎn)的分布形態(tài)來(lái)反映特征間的相互關(guān)系。pyplot模塊中的scatter函數(shù)用于繪制散點(diǎn)圖:matplotlib.pyplot.scatter(x,

y,

s=None,

c=None,

marker=None,

alpha=None,

linewidths=None,

...,

**kwargs)參數(shù)說(shuō)明:x:數(shù)組或序列,散點(diǎn)圖中每個(gè)點(diǎn)的x軸坐標(biāo)。y:數(shù)組或序列,散點(diǎn)圖中每個(gè)點(diǎn)的y軸坐標(biāo)。s:標(biāo)量或數(shù)組,指定散點(diǎn)的大小。如果是一個(gè)標(biāo)量,則所有點(diǎn)的大小都相同;如果是一個(gè)數(shù)組,則每個(gè)點(diǎn)可以有不同的size。使用Matplotlib庫(kù)繪圖常用圖表——繪制散點(diǎn)圖散點(diǎn)圖:亦稱散布圖,是一種通過(guò)在直角坐標(biāo)系中布置坐標(biāo)點(diǎn)(散點(diǎn))來(lái)揭示兩個(gè)特征之間統(tǒng)計(jì)關(guān)系的圖表。它以一個(gè)特征為橫軸,另一個(gè)特征為縱軸,通過(guò)點(diǎn)的分布形態(tài)來(lái)反映特征間的相互關(guān)系。pyplot模塊中的scatter函數(shù)用于繪制散點(diǎn)圖:matplotlib.pyplot.scatter(x,

y,

s=None,

c=None,

marker=None,

alpha=None,

linewidths=None,

...,

**kwargs)參數(shù)說(shuō)明:c:顏色或顏色序列,指定散點(diǎn)的顏色。可以是單個(gè)顏色值,也可以是一個(gè)與x和y長(zhǎng)度相同的數(shù)組,用于為每個(gè)點(diǎn)指定顏色。marker:標(biāo)記的樣式,指定散點(diǎn)的形狀。例如,‘o’表示圓圈,‘s’表示正方形,等等。alpha:透明度,標(biāo)量,指定散點(diǎn)的透明度,范圍從0(完全透明)到1(完全不透明)。使用Matplotlib庫(kù)繪圖常用圖表——繪制散點(diǎn)圖散點(diǎn)圖:亦稱散布圖,是一種通過(guò)在直角坐標(biāo)系中布置坐標(biāo)點(diǎn)(散點(diǎn))來(lái)揭示兩個(gè)特征之間統(tǒng)計(jì)關(guān)系的圖表。它以一個(gè)特征為橫軸,另一個(gè)特征為縱軸,通過(guò)點(diǎn)的分布形態(tài)來(lái)反映特征間的相互關(guān)系。pyplot模塊中的scatter函數(shù)用于繪制散點(diǎn)圖:matplotlib.pyplot.scatter(x,

y,

s=None,

c=None,

marker=None,

alpha=None,

linewidths=None,

...,

**kwargs)參數(shù)說(shuō)明:linewidths:標(biāo)量或數(shù)組,指定散點(diǎn)邊緣的線寬。如果是一個(gè)標(biāo)量,則所有點(diǎn)的邊緣線寬都相同;如果是一個(gè)數(shù)組,則每個(gè)點(diǎn)可以有不同的線寬。...:這里省略了一些其他參數(shù),例如edgecolors(邊緣顏色),facecolors(填充顏色)等。**kwargs:其他的關(guān)鍵字參數(shù),可以用來(lái)進(jìn)一步控制散點(diǎn)的樣式和屬性,例如zorder(繪制順序),label(圖例標(biāo)簽)等。使用Matplotlib庫(kù)繪圖常用圖表——繪制散點(diǎn)圖【例7-4】利用scatter函數(shù)繪制銷售額與利潤(rùn)額關(guān)系的散點(diǎn)圖

importpandasaspdimportmatplotlib.pyplotaspltdf=pd.read_excel(r'./data/sales.xlsx')plt.rcParams['font.sans-serif']='SimHei'#顯示中文plt.rcParams['axes.unicode_minus']=False#設(shè)置正常顯示符號(hào)df_scatter=df[df['城市']=='廣州']#選擇廣州的數(shù)據(jù)plt.scatter(x=df_scatter['銷售額'],y=df_scatter['利潤(rùn)額'],marker='+',alpha=0.7)plt.title('銷售額與利潤(rùn)額的關(guān)系散點(diǎn)圖')#添加標(biāo)題plt.xlabel('銷售額/元')#添加x軸的名稱plt.ylabel('利潤(rùn)額/元')#添加y軸的名稱plt.show()使用Matplotlib庫(kù)繪圖常用圖表——繪制散點(diǎn)圖運(yùn)行結(jié)果如下:使用Matplotlib庫(kù)繪圖常用圖表——繪制柱狀圖柱形圖:也被稱作長(zhǎng)條圖、柱狀圖或條狀圖,是一種統(tǒng)計(jì)圖表,通過(guò)長(zhǎng)方形條形的長(zhǎng)度來(lái)表示數(shù)據(jù)。這種圖表由一系列垂直排列、高度不一的條紋組成,用以展示數(shù)據(jù)的分布狀況。柱形圖適用于比較兩個(gè)或更多組別(在不同的時(shí)間點(diǎn)或條件下)的數(shù)據(jù),專注于單一變量的比較,并且通常在分析較小的數(shù)據(jù)集時(shí)更為常用。pyplot模塊中用于繪制柱狀圖的函數(shù)為bar:bar(x,height,width,bottom=None,*,align='center',data=None,**kwargs)參數(shù)說(shuō)明:bar函數(shù)是Matplotlib庫(kù)中的一個(gè)函數(shù),用于繪制柱形圖。以下是bar函數(shù)的參數(shù)說(shuō)明:x:數(shù)組或序列,柱形圖每個(gè)柱子的中心位置的x軸坐標(biāo)。height:數(shù)組或序列,柱形圖中每個(gè)柱子的高度。使用Matplotlib庫(kù)繪圖常用圖表——繪制柱狀圖柱形圖:也被稱作長(zhǎng)條圖、柱狀圖或條狀圖,是一種統(tǒng)計(jì)圖表,通過(guò)長(zhǎng)方形條形的長(zhǎng)度來(lái)表示數(shù)據(jù)。這種圖表由一系列垂直排列、高度不一的條紋組成,用以展示數(shù)據(jù)的分布狀況。柱形圖適用于比較兩個(gè)或更多組別(在不同的時(shí)間點(diǎn)或條件下)的數(shù)據(jù),專注于單一變量的比較,并且通常在分析較小的數(shù)據(jù)集時(shí)更為常用。pyplot模塊中用于繪制柱狀圖的函數(shù)為bar:bar(x,height,width,bottom=None,*,align='center',data=None,**kwargs)參數(shù)說(shuō)明:width:柱子的寬度,可以是一個(gè)標(biāo)量或與x相同長(zhǎng)度的數(shù)組。如果提供的是一個(gè)標(biāo)量,那么所有的柱子都會(huì)有相同的寬度;如果是一個(gè)數(shù)組,每個(gè)柱子的寬度可以不同。bottom:數(shù)組或序列,柱子的底部位置(即y軸的起始位置),默認(rèn)為None,表示從0開(kāi)始。align:柱子的對(duì)齊方式,可以是'center'(默認(rèn)),'lege'或'right'。這決定了柱子是相對(duì)于x值的中心、左邊緣還是右邊緣對(duì)齊。使用Matplotlib庫(kù)繪圖常用圖表——繪制柱狀圖柱形圖:也被稱作長(zhǎng)條圖、柱狀圖或條狀圖,是一種統(tǒng)計(jì)圖表,通過(guò)長(zhǎng)方形條形的長(zhǎng)度來(lái)表示數(shù)據(jù)。這種圖表由一系列垂直排列、高度不一的條紋組成,用以展示數(shù)據(jù)的分布狀況。柱形圖適用于比較兩個(gè)或更多組別(在不同的時(shí)間點(diǎn)或條件下)的數(shù)據(jù),專注于單一變量的比較,并且通常在分析較小的數(shù)據(jù)集時(shí)更為常用。pyplot模塊中用于繪制柱狀圖的函數(shù)為bar:bar(x,height,width,bottom=None,*,align='center',data=None,**kwargs)參數(shù)說(shuō)明:data:如果提供了data參數(shù),那么x、height、width和bottom可以是字符串,它們將被解釋為data字典中的鍵。**kwargs:其他的關(guān)鍵字參數(shù),可以用來(lái)控制柱子的外觀,如顏色(color)、邊緣顏色(edgecolor)、填充顏色(facecolor)、線型(linestyle)、線寬(linewidth)等。這些參數(shù)共同定義了柱形圖的外觀和數(shù)據(jù)表示,使得用戶能夠靈活地創(chuàng)建滿足特定需求的柱形圖。使用Matplotlib庫(kù)繪圖常用圖表——繪制折線圖折線圖:亦稱線形圖,是一種通過(guò)連線數(shù)據(jù)點(diǎn)來(lái)展示數(shù)據(jù)趨勢(shì)的圖表。它可視作將散點(diǎn)圖中的點(diǎn)按照橫軸(x軸)的順序依次連接而成的圖形。折線圖的核心優(yōu)勢(shì)在于直觀地展示因變量y隨自變量x變化的走勢(shì),尤為適用于呈現(xiàn)隨時(shí)間推移而變化的連續(xù)數(shù)據(jù)。在折線圖中,類別數(shù)據(jù)通常沿著水平軸等距排列,而數(shù)值數(shù)據(jù)則沿著垂直軸均勻分布,以此展現(xiàn)數(shù)據(jù)的變化情況。使用Matplotlib庫(kù)繪圖常用圖表——繪制餅形圖餅圖:亦稱餅狀圖,是一種用于展示各分類占比的圖表,它通過(guò)不同大小的扇形區(qū)域來(lái)比較各類別的相對(duì)大小。餅圖的優(yōu)勢(shì)在于能夠直觀地展示各部分與整體之間的比例關(guān)系,使得每組數(shù)據(jù)相對(duì)于總數(shù)的占比一目了然,其表現(xiàn)方式簡(jiǎn)潔而明了。Matplotlib繪制餅形圖主要使用pie()方法:pie(x,explode=None,labels=None,colors=None,autopct=None,pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=None,radius=None,counterclock=True,wedgeprops=None,textprops=None,center=(0,0),frame=False,rotatelabels=False,hold=None,data=None)參數(shù)說(shuō)明:data:如果提供了data參數(shù),那么x、height、width和bottom可以是字符串,它們將被解釋為data字典中的鍵。x:必需參數(shù),表示餅圖每個(gè)扇形的尺寸。這些值決定了每個(gè)扇形的大小。使用Matplotlib庫(kù)繪圖常用圖表——繪制餅形圖pie(x,explode=None,labels=None,colors=None,autopct=None,pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=None,radius=None,counterclock=True,wedgeprops=None,textprops=None,center=(0,0),frame=False,rotatelabels=False,hold=None,data=None)參數(shù)說(shuō)明:explode:可選參數(shù),用于突出顯示餅圖中的某些扇形。它是一個(gè)與x相同長(zhǎng)度的序列,其中非零值表示相應(yīng)扇形從餅圖中分離的距離。labels:可選參數(shù),用于為餅圖的每個(gè)扇形設(shè)置標(biāo)簽。它是一個(gè)字符串序列,每個(gè)元素對(duì)應(yīng)x中的一個(gè)元素。x:必需參數(shù),表示餅圖每個(gè)扇形的尺寸。這些值決定了每個(gè)扇形的大小。explode:可選參數(shù),用于突出顯示餅圖中的某些扇形。它是一個(gè)與x相同長(zhǎng)度的序列,其中非零值表示相應(yīng)扇形從餅圖中分離的距離。labels:可選參數(shù),用于為餅圖的每個(gè)扇形設(shè)置標(biāo)簽。它是一個(gè)字符串序列,每個(gè)元素對(duì)應(yīng)x中的一個(gè)元素。colors:可選參數(shù),用于設(shè)置餅圖中每個(gè)扇形的顏色??梢允且粋€(gè)顏色序列或顏色名稱。使用Matplotlib庫(kù)繪圖常用圖表——繪制餅形圖pie(x,explode=None,labels=None,colors=None,autopct=None,pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=None,radius=None,counterclock=True,wedgeprops=None,textprops=None,center=(0,0),frame=False,rotatelabels=False,hold=None,data=None)參數(shù)說(shuō)明:autopct:可選參數(shù),用于在餅圖的每個(gè)扇形上顯示百分比。它可以是格式化字符串,例如'%1.1f%%'。pctdistance:可選參數(shù),用于設(shè)置autopct顯示的百分比距離餅圖中心的距離,默認(rèn)值為0.6。shadow:可選參數(shù),布爾值,如果為T(mén)rue,則在餅圖下方繪制陰影,增加立體感。labeldistance:可選參數(shù),用于設(shè)置標(biāo)簽距離餅圖中心的距離,默認(rèn)值為1.1。startangle:可選參數(shù),用于設(shè)置餅圖的起始角度,默認(rèn)值為0,即從x軸正方向開(kāi)始。radius:可選參數(shù),用于設(shè)置餅圖的半徑。counterclock:可選參數(shù),布爾值,如果為T(mén)rue,則扇形按照逆時(shí)針?lè)较蚶L制,否則按照順時(shí)針?lè)较?。wedgeprops:可選參數(shù),字典類型,用于設(shè)置餅圖扇形的屬性,如邊緣顏色、寬度等。使用Matplotlib庫(kù)繪圖常用圖表——繪制餅形圖pie(x,explode=None,labels=None,colors=None,autopct=None,pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=None,radius=None,counterclock=True,wedgeprops=None,textprops=None,center=(0,0),frame=False,rotatelabels=False,hold=None,data=None)參數(shù)說(shuō)明:textprops:可選參數(shù),字典類型,用于設(shè)置餅圖上文本的屬性,如字體大小、顏色等。center:可選參數(shù),元組類型,用于設(shè)置餅圖中心的位置。frame:可選參數(shù),布爾值,如果為T(mén)rue,則在餅圖周圍繪制一個(gè)框。rotatelabels:可選參數(shù),布爾值,如果為T(mén)rue,則旋轉(zhuǎn)標(biāo)簽以便它們更好地適應(yīng)扇形。hold:已棄用參數(shù),不再使用。data:可選參數(shù),用于指定x的數(shù)據(jù)源,通常在處理pandasDataFrame時(shí)使用。使用Matplotlib庫(kù)繪圖常用圖表——繪制餅形圖餅圖:餅圖包括基礎(chǔ)餅圖、分裂餅圖、帶陰影的立體餅圖以及環(huán)形圖等不同樣式。分裂餅圖通過(guò)將關(guān)鍵部分從整體中分離出來(lái),以強(qiáng)調(diào)其重要性。這一效果通過(guò)設(shè)置explode參數(shù)實(shí)現(xiàn),該參數(shù)定義了餅圖各部分與中心的距離,只需為想要突出的部分指定非零值即可。例如,若要突出第一個(gè)扇形,可以設(shè)置explode=(0.1,0,0,0,0)。帶陰影的立體餅圖:通過(guò)啟用shadow參數(shù)來(lái)增強(qiáng)視覺(jué)效果shadow=True使用Matplotlib庫(kù)繪圖常用圖表——繪制餅形圖環(huán)形圖:是由多個(gè)大小不一的餅圖層疊而成,中間區(qū)域被移除,形成環(huán)狀結(jié)構(gòu)。這種圖表同樣通過(guò)pie函數(shù)實(shí)現(xiàn),關(guān)鍵在于wedgeprops參數(shù),它是一個(gè)字典,用于定義餅圖內(nèi)外邊緣的屬性,如環(huán)的寬度、顏色和邊界寬度。wedgeprops={'width':0.3,'edgecolor':'blue'}繪制內(nèi)嵌環(huán)形圖,即雙環(huán)形圖時(shí),需注意:連續(xù)調(diào)用兩次pie函數(shù)。使用wedgeprops參數(shù)設(shè)置環(huán)形的邊界屬性。通過(guò)radius參數(shù)設(shè)定不同的半徑大小。使用Matplotlib庫(kù)繪圖常用圖表——繪制面積圖面積圖:用于體現(xiàn)數(shù)量隨時(shí)間而變化的程度,也可用于引起人們對(duì)總值趨勢(shì)的注意。例如,表示隨時(shí)間而變化的利潤(rùn)的數(shù)據(jù),可以繪制在面積圖中以強(qiáng)調(diào)總利潤(rùn)。Matplotlib繪制面積圖主要使用stackplot函數(shù):matplotlib.pyplot.stackplot(x,*args,labels=(),colors=None,baseline='zero',data=None,**kwargs)參數(shù)說(shuō)明:x:1-D數(shù)組或列表,用于定義堆疊面積圖的x軸值。*args:可變數(shù)量的參數(shù),每個(gè)參數(shù)都是一個(gè)1-D數(shù)組或列表,代表堆疊面積圖的y軸值。每個(gè)數(shù)組對(duì)應(yīng)堆疊圖中的一個(gè)層。必須至少提供一個(gè)數(shù)組。labels:字符串列表,用于為每個(gè)堆疊的層分配標(biāo)簽。這些標(biāo)簽將用于圖例。colors:顏色列表或字符串,用于指定每個(gè)堆疊層的顏色。如果提供,其長(zhǎng)度必須與*args中的層數(shù)相同。使用Matplotlib庫(kù)繪圖常用圖表——繪制面積圖面積圖:matplotlib.pyplot.stackplot(x,*args,labels=(),colors=None,baseline='zero',data=None,**kwargs)參數(shù)說(shuō)明:baseline:字符串或浮點(diǎn)數(shù),定義堆疊的基線。默認(rèn)為'zero',表示基線是y=0。也可以設(shè)置為其他值或'sym'(表示居中對(duì)齊)。data:如果提供,則必須是一個(gè)字典,其中鍵是x和*args參數(shù)的名稱,值是相應(yīng)的數(shù)據(jù)。使用data參數(shù)時(shí),可以在x和*args中使用字符串來(lái)引用字典中的數(shù)據(jù)。**kwargs:其他關(guān)鍵字參數(shù),用于控制線條和填充區(qū)域的屬性,如alpha(透明度)、edgecolor(邊緣顏色)等。使用Matplotlib庫(kù)繪圖常用圖表——繪制面積圖面積圖:以下是一些常用的

**kwargs參數(shù):alpha:控制填充區(qū)域的透明度。edgecolor:填充區(qū)域的邊緣顏色。linewidth:填充區(qū)域邊緣的線寬。linestyle:填充區(qū)域邊緣的線型。使用stackplot函數(shù)時(shí),通常需要確保x和每個(gè)*args參數(shù)中的數(shù)組長(zhǎng)度相同,以便正確繪制堆疊面積圖。使用Matplotlib庫(kù)繪圖常用圖表——繪制熱力圖熱力圖:是通過(guò)密度函數(shù)進(jìn)行可視化用于表示地圖中點(diǎn)的密度的熱圖。它使人們能夠獨(dú)立于縮放因子感知點(diǎn)的密度。熱力圖可以顯示不可點(diǎn)擊區(qū)域發(fā)生的事情。利用熱力圖可以看數(shù)據(jù)表里的多個(gè)特征中的兩兩內(nèi)容的相似度。例如,以特殊高亮的形式顯示訪客熱衷的頁(yè)面區(qū)域和訪客所在的地理區(qū)域的圖示。熱力圖是數(shù)據(jù)分析的常用方法,通過(guò)色差、亮度來(lái)展示數(shù)據(jù)的差異、易于理解。熱力圖在網(wǎng)頁(yè)分析、業(yè)務(wù)數(shù)據(jù)分析等其他領(lǐng)域也有較為廣泛的應(yīng)用。使用Matplotlib庫(kù)繪圖常用圖表——繪制熱力圖【例7-10】從“大數(shù)據(jù)211班成績(jī)表”中讀取五位同學(xué)的“Python程序設(shè)計(jì)”“數(shù)據(jù)庫(kù)”“數(shù)據(jù)結(jié)構(gòu)”“數(shù)據(jù)處理”成績(jī),繪制熱力圖對(duì)比分析。

importpandasaspdimportmatplotlib.pyplotaspltdf=pd.read_excel("./大數(shù)據(jù)211班成績(jī)表.xlsx").head()name=df['姓名']x=df.loc[:,'Python程序設(shè)計(jì)':'數(shù)據(jù)處理']plt.rcParams['font.sans-serif']=['SimHei']#解決中文亂碼問(wèn)題plt.imshow(x)plt.xticks(range(0,4,1),['Python程序設(shè)計(jì)','數(shù)據(jù)庫(kù)','數(shù)據(jù)結(jié)構(gòu)','數(shù)據(jù)處理'])plt.yticks(range(0,5,1),name)plt.colorbar()plt.title('五名學(xué)生的四科成績(jī)統(tǒng)計(jì)熱力圖')plt.show()使用Matplotlib庫(kù)繪圖常用圖表——繪制熱力圖運(yùn)行結(jié)果如下:使用Matplotlib庫(kù)繪圖常用圖表——繪制箱線圖箱線圖:也稱盒須圖,通過(guò)繪制反映數(shù)據(jù)分布特征的統(tǒng)計(jì)量,提供有關(guān)數(shù)據(jù)位置和分散情況的關(guān)鍵信息,尤其在比較不同特征時(shí),更可表現(xiàn)其分散程度差異。箱線圖通過(guò)數(shù)據(jù)的四分位數(shù)來(lái)展示數(shù)據(jù)的分布情況。例如:數(shù)據(jù)的中心位置,數(shù)據(jù)間的離散程度,是否有異常值等。把數(shù)據(jù)從小到大進(jìn)行排列并等分成四份:第一分位數(shù)(Q1),第二分位數(shù)(Q2)和第三分位數(shù)(Q3)分別為數(shù)據(jù)的第25%,50%和75%的數(shù)字。四分位間距(Interquartilerange(IQR))=上分位數(shù)(upperquartile)-下分位數(shù)(lowerquartile)使用Matplotlib庫(kù)繪圖常用圖表——繪制箱線圖箱線圖:箱線圖分為兩部分:箱(box)和須(whisker)。箱(box)用來(lái)表示從第一分位到第三分位的數(shù)據(jù),須(whisker)用來(lái)表示數(shù)據(jù)的范圍。箱線圖從上到下各橫線分別表示:數(shù)據(jù)上限(通常是Q3+1.5*IQR),第三分位數(shù)(Q3),第二分位數(shù)(中位數(shù)),第一分位數(shù)(Q1),數(shù)據(jù)下限(通常是Q1-1.5*IQR)。有時(shí)還有一些圓點(diǎn),位于數(shù)據(jù)上下限之外,表示異常值(outliers)。使用Matplotlib庫(kù)繪圖常用圖表——繪制箱線圖箱線圖:matplotlib.pyplot.boxplot(x,notch=None,sym=None,vert=None,whis=None,positions=None,widths=None,patch_artist=None,meanline=None,showmeans=None,showcaps=None,showbox=None,showfliers=None,boxprops=None,labels=None,flierprops=None,medianprops=None,meanprops=None,capprops=None,whiskerprops=None)參數(shù)說(shuō)明:x:數(shù)據(jù)序列,可以是列表、數(shù)組或pandas的Series對(duì)象。如果x是一個(gè)列表,則每個(gè)元素都可以是一個(gè)數(shù)據(jù)序列。如果x是一個(gè)數(shù)組,則每一列被視為一個(gè)單獨(dú)的數(shù)據(jù)序列。notch:布爾值,默認(rèn)為False。如果為T(mén)rue,則繪制帶有缺口(notch)的箱形圖,缺口顯示中位數(shù)置信區(qū)間。使用Matplotlib庫(kù)繪圖常用圖表——繪制箱線圖箱線圖:參數(shù)說(shuō)明:sym:字符串,默認(rèn)為'o'。用于指定異常值(flier)的標(biāo)記符號(hào)。vert:布爾值,默認(rèn)為T(mén)rue。如果為T(mén)rue,則箱形圖垂直繪制;如果為False,則水平繪制。whis:字符串或浮點(diǎn)數(shù),默認(rèn)為1.5。定義whiskers的范圍,即箱形圖中須線的長(zhǎng)度。它可以是一個(gè)數(shù)字,表示四分位距(IQR)的倍數(shù),或者是一個(gè)包含兩個(gè)數(shù)字的元組,表示whiskers的確切位置。positions:數(shù)組,用于指定箱形圖的位置。widths:浮點(diǎn)數(shù)或數(shù)組,用于指定箱形圖的寬度。patch_artist:布爾值,默認(rèn)為False。如果為T(mén)rue,則箱形

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論