小編給大家分享一下Python中如何使用Pandas生成可視化圖表,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)建站于2013年創(chuàng)立,先為岱山等服務(wù)建站,岱山等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為岱山企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。一、線型圖
對(duì)于pandas的內(nèi)置數(shù)據(jù)類型,Series 和 DataFrame 都有一個(gè)用于生成各類 圖表 的 plot 方法。 默認(rèn)情況下, 它們所生成的是線型圖。其實(shí)Series和DataFrame上的這個(gè)功能只是使用matplotlib庫的plot()方法的簡(jiǎn)單包裝實(shí)現(xiàn)。參考以下示例代碼 -
import pandas as pd import numpy as np df = pd.DataFrame(np.random.randn(10,4),index=pd.date_range('2018/12/18', periods=10), columns=list('ABCD')) df.plot()
執(zhí)行上面示例代碼,得到以下結(jié)果 -
如果索引由日期組成,則調(diào)用gct().autofmt_xdate()來格式化x軸,如上圖所示。
我們可以使用x和y關(guān)鍵字繪制一列與另一列。
s = Series( np. random. randn( 10). cumsum(), index= np. arange( 0, 100, 10)) s. plot()
pandas 的大部分繪圖方法都有 一個(gè) 可選的ax參數(shù), 它可以是一個(gè) matplotlib 的 subplot 對(duì)象。 這使你能夠在網(wǎng)格 布局 中 更為靈活地處理 subplot 的位置。 DataFrame的plot 方法會(huì)在 一個(gè) subplot 中為各列繪制 一條 線, 并自動(dòng)創(chuàng)建圖例( 如圖所示):
df = DataFrame( np. random. randn( 10, 4). cumsum( 0), ...: columns=[' A', 'B', 'C', 'D'], index= np. arange( 0, 100, 10)) df. plot()
二、柱狀圖
在生成線型圖的代碼中加上 kind=' bar'( 垂直柱狀圖) 或 kind=' barh'( 水平柱狀圖) 即可生成柱狀圖。 這時(shí),Series 和 DataFrame 的索引將會(huì)被用 作 X( bar) 或 (barh)刻度:
In [59]: fig, axes = plt. subplots( 2, 1) In [60]: data = Series( np. random. rand( 16), index= list(' abcdefghijklmnop')) In [61]: data. plot( kind=' bar', ax= axes[ 0], color=' k', alpha= 0. 7) Out[ 61]: < matplotlib. axes. AxesSubplot at 0x4ee7750> In [62]: data. plot( kind=' barh', ax= axes[ 1], color=' k', alpha= 0.
對(duì)于 DataFrame, 柱狀 圖 會(huì) 將 每一 行的 值 分為 一組, 如圖 8- 16 所示:
In [63]: df = DataFrame( np. random. rand( 6, 4), ...: index=[' one', 'two', 'three', 'four', 'five', 'six'], ...: columns= pd. Index([' A', 'B', 'C', 'D'], name=' Genus')) In [64]: df Out[ 64]: Genus A B C D one 0. 301686 0. 156333 0. 371943 0. 270731 two 0. 750589 0. 525587 0. 689429 0. 358974 three 0. 381504 0. 667707 0. 473772 0. 632528 four 0. 942408 0. 180186 0. 708284 0. 641783 five 0. 840278 0. 909589 0. 010041 0. 653207 six 0. 062854 0. 589813 0. 811318 0. 060217 In [65]: df. plot( kind=' bar')
三、條形圖
現(xiàn)在通過創(chuàng)建一個(gè)條形圖來看看條形圖是什么。條形圖可以通過以下方式來創(chuàng)建 -
import pandas as pd import numpy as np df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d']) df.plot.bar()
執(zhí)行上面示例代碼,得到以下結(jié)果 -
要生成一個(gè)堆積條形圖,通過指定:pass stacked=True -
import pandas as pd df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d']) df.plot.bar(stacked=True)
執(zhí)行上面示例代碼,得到以下結(jié)果 -
要獲得水平條形圖,使用barh()方法 -
import pandas as pd import numpy as np df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d']) df.plot.barh(stacked=True)
四、直方圖
可以使用plot.hist()方法繪制直方圖。我們可以指定bins的數(shù)量值。
import pandas as pd import numpy as np df = pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c']) df.plot.hist(bins=20)
執(zhí)行上面示例代碼,得到以下結(jié)果 -
要為每列繪制不同的直方圖,請(qǐng)使用以下代碼 -
import pandas as pd import numpy as np df=pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c']) df.hist(bins=20)
執(zhí)行上面示例代碼,得到以下結(jié)果 -
五、箱型圖
Boxplot可以繪制調(diào)用Series.box.plot()和DataFrame.box.plot()或DataFrame.boxplot()來可視化每列中值的分布。
例如,這里是一個(gè)箱形圖,表示對(duì)[0,1)上的統(tǒng)一隨機(jī)變量的10次觀察的五次試驗(yàn)。
import pandas as pd import numpy as np df = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E']) df.plot.box()
執(zhí)行上面示例代碼,得到以下結(jié)果 -
六、塊型圖
可以使用Series.plot.area()或DataFrame.plot.area()方法創(chuàng)建區(qū)域圖形。
import pandas as pd import numpy as np df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd']) df.plot.area()
執(zhí)行上面示例代碼,得到以下結(jié)果 -
七、散點(diǎn)圖
可以使用DataFrame.plot.scatter()方法創(chuàng)建散點(diǎn)圖。
import pandas as pd import numpy as np df = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd']) df.plot.scatter(x='a', y='b')
執(zhí)行上面示例代碼,得到以下結(jié)果 -
八、餅狀圖
餅狀圖可以使用DataFrame.plot.pie()方法創(chuàng)建。
import pandas as pd import numpy as np df = pd.DataFrame(3 * np.random.rand(4), index=['a', 'b', 'c', 'd'], columns=['x']) df.plot.pie(subplots=True)
執(zhí)行上面示例代碼,得到以下結(jié)果 -
以上是“Python中如何使用Pandas生成可視化圖表”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
本文標(biāo)題:Python中如何使用Pandas生成可視化圖表-創(chuàng)新互聯(lián)
URL地址:http://chinadenli.net/article32/cdgspc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)站排名、網(wǎng)站營(yíng)銷、企業(yè)建站、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容