Python數據分析與應用-從數據獲取到可視化(第2版)課件 第6章 數據可視化_第1頁
Python數據分析與應用-從數據獲取到可視化(第2版)課件 第6章 數據可視化_第2頁
Python數據分析與應用-從數據獲取到可視化(第2版)課件 第6章 數據可視化_第3頁
Python數據分析與應用-從數據獲取到可視化(第2版)課件 第6章 數據可視化_第4頁
Python數據分析與應用-從數據獲取到可視化(第2版)課件 第6章 數據可視化_第5頁
已閱讀5頁,還剩105頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

第6章數據可視化《Python數據分析與應用:從數據獲取到可視化(第2版)》學習目標/Target

了解數據可視化,能夠說出可視化的概念以及意義

熟悉常見的圖表類型,能夠說出圖表的特點以及適用場景

熟悉圖表的基本組成元素,能夠說出每個組成元素的用途學習目標/Target

掌握Matplotlib庫的基本使用,能夠使用Matplotlib庫繪制常見的圖表

掌握Seaborn庫的基本使用,能夠使用Seaborn庫繪制常見的圖表

掌握Pyecharts庫的基本使用,能夠使用Pyecharts庫繪制常見的圖表章節概述/Summary大多數情況下,我們獲取的數據是以文字或數字的形式進行呈現的,這種密密麻麻的文字或數字不僅會降低數據信息的可讀性,而且無法很好地展示數據之間的關系和規律。為了解決這些問題,數據可視化應運而生,它可以使數據變得更直觀,更容易被人們理解與接受。Python提供了許多優秀的用于實現數據可視化功能的庫,比如Matplotlib、Seaborn、Pyecharts等,本章將圍繞著這些庫的基本使用進行詳細地講解。目錄/Contents01數據可視化概述02使用Matplotlib繪圖03使用Seaborn繪圖04使用Pyecharts繪圖05案例:電影數據分析數據可視化概述6.16.1.1

什么是數據可視化了解數據可視化,能夠說出可視化的概念以及意義學習目標6.1.1

什么是數據可視化數據可視化是指將大型數據集中的數據以圖形、圖像的形式表示,并利用數據分析和開發工具發現其中未知信息的處理過程。概念6.1.1

什么是數據可視化數據可視化過程6.1.1

什么是數據可視化數據可視化旨在借助圖形化手段,清晰有效地將數據中的各種屬性和變量呈現出來,使用戶可以從不同的維度觀察數據,從而對數據進行更深入地觀察和分析。6.1.2

常見的圖表類型熟悉常見的圖表類型,能夠說出圖表的特點以及適用場景學習目標6.1.2

常見的圖表類型圖表是一種很好地將數據直觀、形象的可視化手段。圖表概念相較于數值和文字而言,合適的圖表能夠把抽象的數據描述得更加直觀形象,可以很好地反映出數據之間的關系,數據變化的趨勢,以便于用戶對研究做出合理的推斷和預測。圖表優勢6.1.2

常見的圖表類型常見的6種圖表直方圖折線圖柱形圖餅圖散點圖箱形圖6.1.2

常見的圖表類型直方圖直方圖又稱質量分布圖,它由一系列高度不等的矩形條或線段組成,用于反映數據的分布和波動情況。在直方圖中,一般橫軸表示若干連續的、不重疊的值范圍分段,縱軸表示每個范圍分段中統計的值頻率。6.1.2

常見的圖表類型折線圖折線圖是用直線段將各數據點連接起來而組成的圖形,以線條的方式顯示數據的變化趨勢。折線圖可以顯示隨時間(根據常用比例設置)變化的連續數據,適用于顯示在相等時間間隔下的數據趨勢。6.1.2

常見的圖表類型柱形圖柱形圖是由一系列寬度相等的縱向矩形條組成的圖表,它使用矩形條的高度表示數據的多少,以此反映不同分類數據之間的差異。6.1.2

常見的圖表類型餅圖餅圖是一種用于了解數據中各分類占比情況的圖表,它使用圓表示數據的總量,組成圓的扇面表示數據各項占總量的比例大小。6.1.2

常見的圖表類型散點圖散點圖又稱X-Y圖,是由若干組數據點組成的圖表,主要用于判斷兩變量之間是否存在某種關聯,或者總結數據點的分布模式。散點圖包含的數據點越多,比較的效果就會越好。6.1.2

常見的圖表類型箱形圖箱形圖又稱盒須圖、箱線圖,是利用數據中的5個統計量——最小值、第一四分位數、中位數、第三四分位數和最大值-——描述數據的一種圖表,主要用于反映一組或多組數據的對稱性、分布程度等信息,因形狀如箱子而得名。箱形圖能夠識別異常值、判斷偏態與尾重、比較數據形狀,適用于品質管理的場景。6.1.2

常見的圖表類型總結直方圖折線圖柱形圖餅圖散點圖箱形圖用于反映一組或多組數據的分布情況。用于反映一組或多組數據的變化趨勢。用于比較不同分類之間的差異情況。用于顯示一組數據中每個分類的分配情況。判斷兩變量之間是否存在某種關聯。識別異常值方面有一定的優越性。6.1.2

常見的圖表類型注意柱形圖與直方圖展示的效果非常相似,但兩者又有著一些不同,主要可以分為以下兩點:①柱形圖用于展示離散型數據(由記錄不同類別的數目所得到的數據)的分布,而直方圖用于展示連續型數據(一定區間內連續數值所組成的數據)的分布。②柱形圖的各矩形條之間具有固定的間隙,而直方圖的各矩形條之間沒有任何間隙。6.1.3

圖表的輔助元素熟悉圖表的基本組成元素,能夠說出每個組成元素的用途學習目標6.1.3

圖表的輔助元素數據可視化支持的圖表類型有很多,但大部分圖表的組成部分基本是相同的,一般包括數據系列和輔助元素,其中數據系列表示在繪圖區域中根據一組數據形成的點線面等圖像;輔助元素是指除了根據數據繪制的圖像之外的內容,常用的輔助元素包括坐標軸、標題、圖例、網格、參考線、參考區域、注釋文本,它們都可以對圖形進行補充說明。6.1.3

圖表的輔助元素常用的輔助元素6.1.3

圖表的輔助元素常用的輔助元素坐標軸是用于界定圖表繪圖區的一組直線,用作度量的參照框架。坐標軸可以細分為單坐標軸和雙坐標軸,單坐標軸按不同的方向可以分為橫軸和縱軸,其中橫軸為x軸,縱軸為y軸。每個坐標軸上包括刻度標簽、刻度線、軸脊和坐標軸標簽這幾個要素。1.

坐標軸刻度線坐標軸標簽刻度標簽軸脊6.1.3

圖表的輔助元素常用的輔助元素標題是圖表的說明性文本,用于描述圖表的大致內容,便于用戶了解到圖表的主旨。標題分為總標題和副標題,一般位于圖表上方的中心位置。2.

標題主標題副標題6.1.3

圖表的輔助元素常用的輔助元素圖例是集中在圖表一角或一側的方框,主要作用是標識為圖表中的數據系列或分類指定的圖案或顏色。圖例一般由圖例標識和圖例項組成,其中圖例標識指的是標識各組圖形的圖案;圖例項是與圖例標識對應的名稱。3.

圖例圖例標識圖例項6.1.3

圖表的輔助元素常用的輔助元素網格是從坐標軸的刻度線開始、貫穿繪圖區域的若干條線,作為估算圖形所示值的標準。網格按不同的方向可以分為垂直網格和水平網格,這兩種網格既可以單獨被使用,也可以同時被使用。4.

網格參考線是標記坐標軸上特殊值的一條直線,用于為圖表中圖形的比較提供參考依據,例如目標線、平均線、預算線等。參考線按方向的不同可以分為水平參考線和垂直參考線。5.

參考線6.1.3

圖表的輔助元素常用的輔助元素參考區域是標記坐標軸上特殊范圍的一塊區域。6.

參考區域注釋文本表示對圖形的一些注釋和說明。注釋文本按注釋對象的不同主要分為指向型注釋文本和無指向型注釋文本,其中指向型注釋文本一般是針對圖表某一部分的特定說明,無指向型注釋文本一般是針對圖表整體的特定說明。7.

注釋文本使用Matplotlib繪圖6.26.2.1

繪制折線圖掌握繪制折線圖的方式,能夠根據需要通過pyplot模塊繪制指定樣式的折線圖學習目標6.2.1

繪制折線圖折線圖是我們在日常生活中經常見到的圖表,比如24小時天氣預報圖、股票實時行情圖等。折線圖具有一些子類型,包括普通折線圖和帶數據標記的折線圖等。6.2.1

繪制折線圖基本思路1導入pyplot模塊完善圖表,添加輔助元素使用plot()函數繪制線條使用show()函數展示圖表2346.2.1

繪制折線圖繪制包含一條線的折線圖importnumpyasnp#1.導入pyplot模塊importmatplotlib.pyplotasplt#2.繪制線條x=np.arange(1,16)y_max=np.array([32,33,34,34,33,31,30,29,30,29,26,23,21,25,31])plt.plot(x,y_max)#3.展示圖表plt.show()暫時沒添加輔助元素6.2.1

繪制折線圖繪制包含兩條線的折線圖第1種方式:多次調用plot()函數繪制多條線。plt.plot(x1,y1)#繪制第一條線plt.plot(x2,y2)#繪制第二條線第2種方式:調用plot()函數時傳入多組數據,每組數據之間使用逗號進行分隔。plt.plot(x1,y1,x2,y2)6.2.1

繪制折線圖繪制包含兩條線的折線圖importnumpyasnp#1.導入pyplot模塊importmatplotlib.pyplotasplt#2.繪制線條x=np.arange(1,16)y_max=np.array([32,33,34,34,33,31,30,29,30,29,26,23,21,25,31])y_min=np.array([19,19,20,22,

22,21,22,16,18,18,17,14,

15,16,16])plt.plot(x,y_max)plt.plot(x,y_min)#3.展示圖表plt.show()6.2.1

繪制折線圖繪制帶數據標記的折線圖如果希望能夠在線條上方添加數據標記,以標注出每個日期對應的數據點的位置,則可以在調用plot()函數繪制線條時將標記取值傳遞給marker參數,另外還可以傳入markersize或ms參數,用于設置標記的大小。plt.plot(x,y_max,

marker='o',ms=6)plt.plot(x,y_min,

marker='*',ms=8)6.2.1

繪制折線圖給折線圖添加輔助元素...#3.完善圖表plt.rcParams['font.sans-serif']=['SimHei']plt.title('北京未來15天的最

高氣溫和最低氣溫')plt.xlabel('日期')plt.ylabel('氣溫/攝氏度')#4.展示圖表plt.show()6.2.2

繪制柱形圖掌握繪制柱形圖的方式,能夠根據需要通過pyplot模塊繪制指定樣式的柱形圖學習目標6.2.2

繪制柱形圖基本思路1導入pyplot模塊完善圖表,添加輔助元素使用bar()函數繪制柱形使用show()函數展示圖表2346.2.2

繪制柱形圖繪制包含一組柱形的柱形圖importnumpyasnp#1.導入pyplot模塊importmatplotlib.pyplotasplt#2.繪制柱形x=np.arange(1,6)y_a=np.array([15970,18770,22020,

26890,31150])plt.bar(x,y_a,tick_label=[

"FY2018","FY2019","FY2020",

"FY2021","FY2022"],width=0.3)#3.展示圖表plt.show()6.2.2

繪制柱形圖繪制包含兩組柱形的柱形圖...y_b=np.array([8470,12150,15650,

21310,26120])plt.bar(x,y_abar_width=0.3,

tick_label=["FY2018","FY2019",

"FY2020","FY2021","FY2022"],

width=bar_width)plt.bar(x+bar_width,y_b,

width=bar_width)#3.展示圖表plt.show()如果希望在繪制區域上再繪制另一組柱形,也就是說繪制包含兩組柱形的柱形圖,則需要再次調用bar()函數,并在該函數中通過第一個參數控制另一組柱形顯示的位置。6.2.2

繪制柱形圖給柱形圖添加輔助元素#添加注釋文本defautolabel(rects):forrectinrects:

rect_height=rect.get_height()rect_x=rect.get_x()rect_width=rect.get_width()plt.text(rect_x+rect_width/2,rect_height+30,

s='{}'.format(rect_height),ha='center',va='bottom',fontsize=9)autolabel(rect_a)autolabel(rect_b)#添加圖例plt.legend([rect_a,rect_b],['品牌A','品牌B'])6.2.3

繪制直方圖掌握繪制直方圖的方式,能夠根據需要通過pyplot模塊繪制指定樣式的直方圖學習目標6.2.3

繪制直方圖1導入pyplot模塊完善圖表,添加輔助元素使用hist()函數繪制圖像使用show()函數展示圖表234基本思路6.2.3

繪制直方圖繪制灰度直方圖...#2.繪制矩形np.random.seed(0)arr_random=np.random.randint(0,256,50)plt.hist(arr_random,bins=10,color='c',edgecolor='k',alpha=0.7)#3.完善圖表

plt.xlabel('灰度值')plt.ylabel('像素數(個)')plt.title('灰度直方圖')#4.展示圖表plt.show()直方圖經常被應用于圖像處理領域,比如灰度直方圖,它是將數字圖像中的所有像素按照灰度值的大小,統計其出現的頻率,反映一個圖像灰度值的分布情況。x軸的刻度標簽與圖形并不是十分匹配6.2.3

繪制直方圖優化灰度直方圖為了解決刻度標簽與圖形不匹配的問題,我們需要先獲取每個矩形對應的數值區間,再根據這些數值重新設置x軸上的刻度標簽。如果希望獲取每個矩形對應的數值區間,則可以保存hist()函數的返回值,hist()函數會返回三個值,分別是n、bins和patches,其中n是包含頻數的列表,bins是包含區間的列表,patches是包含矩形對象的容器。如果希望設置x軸的刻度標簽,則可以通過xticks()函數實現。6.2.3

繪制直方圖優化灰度直方圖...#2.繪制矩形np.random.seed(0)arr_random=np.random.randint(0,

256,50)nums,bins,patches=plt.hist(arr_random,bins=10,color='c',

edgecolor='k',alpha=0.7)#3.完善圖表

plt.xlabel('灰度值')plt.ylabel('像素數(個)')plt.title('灰度直方圖')plt.xticks(bins,bins)#4.展示圖表plt.show()6.2.4

繪制散點圖掌握繪制散點圖的方式,能夠根據需要通過pyplot模塊繪制指定樣式的散點圖學習目標6.2.4

繪制散點圖1導入pyplot模塊完善圖表,添加輔助元素使用scatter()函數繪制點使用show()函數展示圖表234基本思路6.2.4

繪制散點圖繪制散點圖importnumpyasnp#1.導入pyplot模塊importmatplotlib.pyplotaspltplt.rcParams['font.sans-serif']=['SimHei']#2.繪制點house_area=np.array([225.98,...])house_price=np.array([196.63,...])plt.scatter(house_area,house_price,s=50,c='y',edgecolors='k')

#3.完善圖表

plt.title('房屋面積和房屋價格的關系')plt.xlabel('房屋面積(平方米)')plt.ylabel('房屋價格(萬元)')#4.展示圖表plt.show()6.2.4

繪制散點圖給散點圖添加網格線……#3.完善圖表

plt.title('房屋面積和房屋價格的關系')plt.xlabel('房屋面積(平方米)')plt.ylabel('房屋價格(萬元)')plt.grid(visible=True,linewidth=0.5)plt.xlim(house_area.min()-30,house_area.max()+30)

#4.展示圖表plt.show()如果想要知道每個圓點的大體位置,則可以通過grid()函數給圖表添加網格線,利用網格線便可以看出每個圓點對應的房屋面積及房屋價格。使用Seaborn繪圖6.36.3.1

可視化數據的分布掌握可視化數據分布的方式,能夠根據需要通過Seaborn選擇合適的圖表展示數據的分布情況學習目標6.3.1

可視化數據的分布Matplotlib雖然已經是比較優秀的繪圖庫了,但是它有一個非常令人頭疼的問題,那就是API使用起來過于復雜,其內部有上千個函數,且每個函數都有非常多的參數。Seaborn基于Matplotlib進行了更高級的封裝,它相比Matplotlib可以輕松地畫出漂亮的圖表,使圖表的配色更加舒服,以及圖表元素的樣式更加細膩。6.3.1

可視化數據的分布在處理一組數據之前,我們通常需要提前了解這組數據具體是怎樣分布的。對于包含單變量的數據來說,采用直方圖或核密度曲線是個不錯的選擇;對于包含雙變量的數據來說,可以通過散點圖、二維直方圖、核密度估計圖形等進行展示。6.3.1

可視化數據的分布單變量數據的分布importseabornassns#加載Seaborn自帶的數據tips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制直方圖sns.displot(tips['total_bill'],bins=10)直方圖是常用的描述數據分布情況的圖表,它會先根據數據的范圍劃分一定數量的等寬間隔,這些間隔是連續且不重疊的,并統計每個間隔中有多少個數據。Seaborn中提供了一個displot()函數,該函數默認用于繪制一個直方圖。6.3.1

可視化數據的分布核密度估計曲線是一種統計圖表,它通過在每個數據點周圍放置一個核函數,并通過調整核函數的寬度得到一個平滑的曲線。曲線的高度表示數據點密度的大小,曲線頂部對應著數據點最多的區域,曲線底部對應著數據點最少的區域。單變量數據的分布6.3.1

可視化數據的分布importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制核密度估計曲線sns.displot(tips['total_bill'],kind='kde')我們可以直接使用distplot()函數繪制核密度估計曲線,只需要在使用該函數時給kind參數傳入值“kde”,就可以根據數據繪制一條核密度估計曲線。單變量數據的分布6.3.1

可視化數據的分布importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制核密度估計曲線,顯示密度觀察條sns.displot(tips['total_bill'],kind='kde',rug=True)我們還可以在核密度估計曲線圖中顯示密度觀察條,只需要在調用distplot()函數時給rug參數傳入值True。單變量數據的分布6.3.1

可視化數據的分布雙變量數據的分布在Seaborn中,jointplot()函數用于繪制散點圖、二維直方圖、二維密度圖,以反映兩個變量之間的關系,以及每個變量在單獨坐標軸上的分布情況。6.3.1

可視化數據的分布importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制散點圖sns.jointplot(x='total_bill',y='tip',data=tips)雙變量數據的分布1.

繪制散點圖6.3.1

可視化數據的分布雙變量數據的分布2.

繪制六邊形二維直方圖六邊形二維直方圖的效果類似于蜂巢的形狀,它主要用于顯示落在六邊形區域內的觀察值的計數,適用于數量較大的數據集。6.3.1

可視化數據的分布sns.jointplot(x='total_bill',y='tip',data=tips,kind="hex")雙變量數據的分布2.

繪制六邊形二維直方圖我們可以直接通過jointplot()函數繪制六邊形二維直方圖,此時只需要給kind參數傳入值“hex",就可以繪制六邊形的二維直方圖。6.3.1

可視化數據的分布雙變量數據的分布3.

繪制二維密度圖當散點圖中數據點過多,且重疊程度較大時,若仍然希望查看數據的分布情況,則可以通過二維密度圖展示密集程度。6.3.1

可視化數據的分布tips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制二維密度圖,并畫上陰影sns.jointplot(x='total_bill',y='tip',data=tips,kind='kde',shade=True)雙變量數據的分布3.

繪制二維密度圖我們可以使用jointplot()函數繪制二維密度圖,只需要在繪制時給kind參數傳入值“kde",就可以根據數據繪制二維密度圖。6.3.2

用分類數據繪圖掌握可視化數據分布的方式,能夠根據需要通過Seaborn選擇合適的圖表展示數據的分布情況學習目標6.3.2

用分類數據繪圖分類數據是比較常見的數據類型,它是按照現象的某種屬性對其進行分類或分組而得到的反映事物類型的數據。例如,企業按照經濟性質被分為國有、集體、私營、其他經濟這幾類,“國有”、“集體”、“私營”和“其他經濟”就是分類數據。6.3.2

用分類數據繪圖importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#根據分類數據繪制散點圖sns.stripplot(x="day",y="total_bill",data=tips)在Seaborn中,我們可以通過stripplot()函數根據分類數據繪制一個散點圖,用于呈現每個分類對應的數據點的分布情況。分類數據的散點圖一些數據點之間互相重疊,不利于觀察。6.3.2

用分類數據繪圖#繪制散點圖,所有的數據點不會重疊sns.swarmplot(x="day",y="total_bill",data=tips)我們可以使用swarmplot()函數繪制一個散點圖,這個散點圖里面所有的數據點不會重疊,能夠清晰地展示數據的分布情況。分類數據的散點圖6.3.2

用分類數據繪圖分類內的分布如果希望查看每個分類下數據的分布情況,我們可以通過箱形圖和提琴圖進行展示,其中箱形圖可以查看數據的四分位的分布情況,小提琴圖結合了箱形圖與核密度圖的特征,用于展示多組數據的分布狀態以及概率密度。6.3.2

用分類數據繪圖分類內的分布importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制箱形圖sns.boxplot(x="day",y="total_bill",data=tips)1.

繪制箱形圖在Seaborn中,我們可以使用boxplot()函數繪制箱形圖。6.3.2

用分類數據繪圖分類內的分布2.

繪制小提琴圖小提琴圖是箱式圖與核密度圖的結合,它與箱型圖相比,能夠展示更多的信息。小提琴圖不僅能顯示一組數據的中位數、上四分位數、下四分位數等信息,還能顯示數據在不同數值下的概率密度,這對分析數據而言是非常有利的。6.3.2

用分類數據繪圖分類內的分布importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制小提琴圖sns.violinplot(x="day",y="total_bill",data=tips)2.

繪制小提琴圖在Seaborn中,使用violinplot()函數可以繪制小提琴圖。6.3.2

用分類數據繪圖分類內的統計importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制柱形圖sns.barplot(x="day",y="total_bill",data=tips)1.

繪制柱形圖在Seaborn中,可以使用barplot()函數繪制柱形圖。默認情況下,柱形圖中每個柱形的上方會顯示誤差線,這些誤差線可以提供關于數據的不確定性或變化的信息。6.3.2

用分類數據繪圖分類內的統計importseabornassnstips=sns.load_dataset('tips',data_home='data/seaborn-data')#繪制點圖sns.pointplot(x="day",y="total_bill",data=tips)2.

繪制點圖

在Seaborn中,我們可以使用pointplot()函數繪制點圖,點圖中沒有顯示完整的圖形,而是顯示點和誤差線,其中點代表平均值或其他估計值,誤差線代表代表置信區間。使用Pyecharts繪圖6.46.4.1

Pyecharts簡介熟悉Pyecharts的基本使用,能夠歸納Pyecharts繪制圖表的基本思路學習目標6.4.1

Pyecharts簡介Pyecharts是一個用于生成Echarts圖表的開源庫,它可以幫助用戶在不了解JavaScript語言的前提下,通過自身封裝的一些方法繪制基于JavaScript實現的Echarts圖表,使圖表呈現出炫酷的效果。在使用Pyecharts庫之前,我們需要確保當前的環境中已經安裝了Pyecharts庫,本書使用的版本是1.9.1。6.4.1

Pyecharts簡介Pyecharts庫提供了非常豐富的圖表類型,包括基本圖表、直角坐標系圖表、樹型圖表、地理圖表、3D圖表、組合圖表,其中基本圖表包括餅圖、雷達圖、詞云圖、漏斗圖等;直角坐標系圖表包括折線圖、柱形圖、散點圖等。圖表種類6.4.1

Pyecharts簡介繪圖思路1創建圖表類的對象添加圖表配置項添加圖表用到的數據渲染圖表2346.4.1

Pyecharts簡介創建圖表類的對象Pyecharts庫的charts模塊中提供了很多封裝圖表功能的圖表類。類說明類說明Line折線圖WordCloud詞云圖PictorialBar象形柱形圖Map統計地圖Bar柱形圖/條形圖HeatMap熱力圖Pie餅圖/圓環圖Funnel漏斗圖Scatter散點圖/氣泡圖Gauge儀表盤Boxplot箱形圖Sankey桑基圖Radar雷達圖Tree樹狀圖6.4.1

Pyecharts簡介所有圖表類都繼承自Base基類,它們可以使用與類同名的構造方法實例化對象。Bar(init_opts=opts.InitOpts())上述方法中init_opts參數表示初始化配置項,該參數需要接收一個InitOpts類的對象,該對象用于給圖表指定一些通用的屬性,比如背景顏色、畫布大小等。frompyecharts.chartsimportBarbar=Bar()創建一個Bar類的對象,并使用默認大小的畫布示例創建圖表類的對象語法格式6.4.1

Pyecharts簡介添加圖表用到的數據每個圖表類內部都提供了添加圖表用到的數據的方法add()或add_xx()方法,其中直角坐標系圖表類一般可以通過add_yaxis()或add_xaxis()方法添加x軸或y軸的數據。bar.add_xaxis(["襯衫","羊毛衫","雪紡衫","褲子","高跟鞋","襪子"])bar.add_yaxis("商家A",[5000,2000,3600,1000,7500,900])6.4.1

Pyecharts簡介添加圖表配置項Pyecharts庫的options模塊中包含眾多關于定制圖表組件及樣式的配置項,每個配置項都對應一個類。全局配置項系列配置項6.4.1

Pyecharts簡介添加圖表配置項1.

全局配置項全局配置項是一些針對圖表通用屬性的配置項,包括初始化屬性、標題組件、圖例組件、工具箱組件、視覺映射組件、提示框組件、數據區域縮放組件。類說明類說明InitOpts初始化配置項VisualMapOpts視覺映射配置項AnimationOptsEcharts畫圖動畫配置項TooltipOpts提示框配置項ToolBoxFeatureOpts工具箱工具配置項AxisLineOpts坐標軸軸脊配置項ToolboxOpts工具箱配置項AxisTickOpts坐標軸刻度配置項BrushOpts區域選擇組件配置項AxisPointerOpts坐標軸指示器配置項TitleOpts標題配置項AxisOpts坐標軸配置項DataZoomOpts數據區域縮放配置項SingleAxisOpts單軸配置項LegendOpts圖例配置項GraphicGroup原生圖形元素組件6.4.1

Pyecharts簡介添加圖表配置項1.

全局配置項每個全局配置項都可以通過與類同名的構造方法實例化對象。frompyechartsimportoptionsasoptsopts.TitleOpts(title="我是柱形圖",subtitle="我是副標題")6.4.1

Pyecharts簡介添加圖表配置項1.

全局配置項如果想要為圖表添加全局配置項(InitOpts除外),則需要將全局配置項傳入set_global_options()方法的相應參數。bar.set_global_opts(title_opts=opts.TitleOpts(

title="我是柱形圖",subtitle="我是副標題"))title_opts參數表示標題配置項,它需要接收一個TitleOpts類的對象。6.4.1

Pyecharts簡介添加圖表配置項1.

全局配置項通過比對參數名和類名可以發現,參數名與類名的單詞都是一樣的,只不過參數名里面的單詞都是小寫的,單詞之間使用下畫線進行連接。我們可以參照參數名與類名的規律,在設置全局配置項時快速找到相應的參數。6.4.1

Pyecharts簡介添加圖表配置項2.

系列配置項系列配置項是一些針對圖表特定元素屬性的配置項,包括圖元樣式、文本樣式、標簽、線條樣式、標記樣式、填充樣式等。類說明類說明ItemStyleOpts圖元樣式配置項MarkLineOpts標記線配置項TextStyleOpts文本樣式配置項MarkAreaOpts標記區域配置項LabelOpts標簽配置項EffectOpts漣漪特效配置項LineStyleOpts線樣式配置項AreaStyleOpts區域填充樣式配置項SplitLineOpts分割線配置項SplitAreaOpts分隔區域配置項MarkPointOpts標記點配置項GridOpts直角坐標系網格配置項6.4.1

Pyecharts簡介添加圖表配置項2.

系列配置項每個系列配置項都可以通過與類同名的構造方法實例化對象。opts.LabelOpts(position='inside',color='white',font_size=10)標簽會被標注于圖形的里面標簽文本的顏色為白色標簽文本的字體大小為10號6.4.1

Pyecharts簡介添加圖表配置項2.

系列配置項若需要為圖表添加系列配置項,則需要將系列配置項傳入add()或add_xx()方法中。bar.add_yaxis("商家A",[5000,2000,3600,1000,7500,900],

label_opts=opts.LabelOpts(position='inside',

color='white',font_size=10))6.4.1

Pyecharts簡介渲染圖表圖表基類Base提供了渲染圖表的方法,分別是render()和render_notebook(),其中render()方法用于將圖表渲染到HTML文件,默認為位于程序根目錄的render.html文件;render_notebook()方法用于將圖表渲染到JupyterNotebook工具中。bar.render_notebook()6.4.1

Pyecharts簡介多學一招:鏈式調用pyecharts在1.0版本中增加了鏈式調用的功能。鏈式調用是指簡化同一對象多次訪問屬性或調用方法的編碼方式,避免多次重復使用同一個對象變量,使代碼變得簡潔、易懂。6.4.1

Pyechar

溫馨提示

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

最新文檔

評論

0/150

提交評論