您好,登錄后才能下訂單哦!
眾所周知,Pandas是基于Python平臺的大數(shù)據(jù)分析與處理的利器,它可以把十分復雜的可視化過程,變得簡單一點。本文將以2019年世界幸福指數(shù)的數(shù)據(jù)為例,為大家詳細展示如何利用pandas繪制可視化圖表。相信經(jīng)過本次手把手教學,大家可以舉一反三掌握繪制可視化圖表的能力。感興趣的朋友趕緊來看詳細的步驟解析吧!
第一步:導入csv文件
import pandas as pd
df=pd.read_csv(‘./world-happiness-report-2019.csv’)
df.head(3)
這個csv圖標的內容是各個國家按照不同維度評價的幸福指數(shù),數(shù)據(jù)幀中一些列的名稱比較冗長,可以重命名使其更加簡潔:
df.rename(columns={“Country (region)”: “Country”, “Log of GDPper capita”: “Log_GDP_per_capita”, “Healthy lifeexpectancy”:”Health_life_expect”},inplace=True)
df.columns
第二步:開始繪制圖形
我們可以先從簡單的柱狀圖開始,只統(tǒng)計腐敗程度、自由度、寬容度、社會支持等幾個維度:
%matplotlib tk
df1=df[:5]
df1.plot(‘Country’,[‘Corruption’,’Freedom’,’Generosity’,’Social support’],kind = ‘bar’)
嫌直接寫名稱太麻煩?沒關系,我們也可以用所在列的數(shù)字來繪制,比如上述4個列分別為7、6、8、5:
%matplotlib tk
df1=df[:5]
df1.plot(‘Country’,[7,6,8,5],kind = ‘bar’)
在上面的代碼中kind = ‘bar’,所以繪制的圖形是柱狀圖,如果我們把參數(shù)改成kind = ‘line’,畫出的就是線狀圖。
df1=df[:5]
df1.plot(‘Country’,[‘Corruption’,’Freedom’,’Generosity’,’Social support’],kind = ‘line’)
第三步:設置坐標軸
(1)取值范圍
在繪制可視化圖表之前,大家要先設置坐標軸。使用xlim和ylim兩個參數(shù)可設置x和y軸的范圍。在折線圖中,我們要將x軸設置為0到20,y限制為從0到100。
df1=df[:20]
df1[‘Freedom’].plot(kind=’line’,xlim=(0,20),ylim=(0,100))
(2)x、y軸刻度
有時候坐標軸上的刻度并不理想,我們希望在上面標上我們喜歡的數(shù)值。比如對于x軸,我們想要標上0、10、15和20幾個值;對于y軸,我們想要標上0、50、70、100幾個值,可以在xticks和yticks參數(shù)中悉數(shù)列出。
df[:20][‘Freedom’].plot(kind=’line’,xlim=(0,20),ylim=(0,100),color=’red’,xticks=([0,10,15,20]),yticks=([0,50,70,100]), title = ‘xticks’)
(3)對數(shù)坐標
如果數(shù)據(jù)的跨度范圍非常大,橫跨好幾個數(shù)量級,那么用線性坐標就無法很好地展示數(shù)據(jù)。這時候我們需要用到對數(shù)坐標,設置方法是將logx或者logy的值設置為Ture。如果我們只想設置x軸為對數(shù)坐標,y軸仍保持線性坐標,那么
df[:20][‘Freedom’].plot(kind=’line’,xlim=(0,1000),ylim=(0,100),color=’red’,logx=True)
第四步:其他高階用法
可以使用stacked參數(shù)來繪制帶有條形圖的堆疊圖。在這里,我們繪制堆疊的水平條,stacked設置為True。將grid參數(shù)設置為True,可以給圖表加入網(wǎng)格。有了subplot參數(shù)還可以繪制子圖,根據(jù)需要指定行數(shù)和列數(shù)以及繪圖的數(shù)量。
總的來講,只要掌握以上的各種參數(shù)設置技巧,利用pandas繪制可視化圖表也不并困難。光說不練假把式,大家要想快速上手可視化圖表,不妨現(xiàn)在就開始嘗試著繪制一下吧!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。