日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python数据分析图_Python数据分析:手把手教你用Pandas生成可视化图表的教程

發布時間:2025/3/13 python 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python数据分析图_Python数据分析:手把手教你用Pandas生成可视化图表的教程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家都知道,Matplotlib 是眾多 Python 可視化包的鼻祖,也是Python最常用的標準可視化庫,其功能非常強大,同時也非常復雜,想要搞明白并非易事。但自從Python進入3.0時代以后,pandas的使用變得更加普及,它的身影經常見于市場分析、爬蟲、金融分析以及科學計算中。

作為數據分析工具的集大成者,pandas作者曾說,pandas中的可視化功能比plt更加簡便和功能強大。實際上,如果是對圖表細節有極高要求,那么建議大家使用matplotlib通過底層圖表模塊進行編碼。當然,我們大部分人在工作中是不會有這樣變態的要求的,所以一句import pandas as pd就足夠應付全部的可視化工作了。

下面,我們總結一下PD庫的一些使用方法和入門技巧。

一、線型圖

對于pandas的內置數據類型,Series 和 DataFrame 都有一個用于生成各類 圖表 的 plot 方法。 默認情況下, 它們所生成的是線型圖。其實Series和DataFrame上的這個功能只是使用matplotlib庫的plot()方法的簡單包裝實現。參考以下示例代碼 -

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()

執行上面示例代碼,得到以下結果 -

如果索引由日期組成,則調用gct().autofmt_xdate()來格式化x軸,如上圖所示。

我們可以使用x和y關鍵字繪制一列與另一列。

s = Series( np. random. randn( 10). cumsum(), index= np. arange( 0, 100, 10))

s. plot()

pandas 的大部分繪圖方法都有 一個 可選的ax參數, 它可以是一個 matplotlib 的 subplot 對象。 這使你能夠在網格 布局 中 更為靈活地處理 subplot 的位置。 DataFrame的plot 方法會在 一個 subplot 中為各列繪制 一條 線, 并自動創建圖例( 如圖所示):

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'( 水平柱狀圖) 即可生成柱狀圖。 這時,Series 和 DataFrame 的索引將會被用 作 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.

對于 DataFrame, 柱狀 圖 會 將 每一 行的 值 分為 一組, 如圖 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')

三、條形圖

現在通過創建一個條形圖來看看條形圖是什么。條形圖可以通過以下方式來創建 -

import pandas as pd

import numpy as np

df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d'])

df.plot.bar()

執行上面示例代碼,得到以下結果 -

要生成一個堆積條形圖,通過指定: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)

執行上面示例代碼,得到以下結果 -

要獲得水平條形圖,使用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的數量值。

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)

執行上面示例代碼,得到以下結果 -

要為每列繪制不同的直方圖,請使用以下代碼 -

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)

執行上面示例代碼,得到以下結果 -

五、箱型圖

Boxplot可以繪制調用Series.box.plot()和DataFrame.box.plot()或DataFrame.boxplot()來可視化每列中值的分布。

例如,這里是一個箱形圖,表示對[0,1)上的統一隨機變量的10次觀察的五次試驗。

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()

執行上面示例代碼,得到以下結果 -

六、塊型圖

可以使用Series.plot.area()或DataFrame.plot.area()方法創建區域圖形。

import pandas as pd

import numpy as np

df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])

df.plot.area()

執行上面示例代碼,得到以下結果 -

七、散點圖

可以使用DataFrame.plot.scatter()方法創建散點圖。

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')

執行上面示例代碼,得到以下結果 -

八、餅狀圖

餅狀圖可以使用DataFrame.plot.pie()方法創建。

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)

執行上面示例代碼,得到以下結果 -

以上這篇Python數據分析:手把手教你用Pandas生成可視化圖表的教程就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

總結

以上是生活随笔為你收集整理的python数据分析图_Python数据分析:手把手教你用Pandas生成可视化图表的教程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天操人人 | 久久香蕉精品视频 | 大奶在线播放 | 东北少妇av | 国产在视频线精品视频 | 国产三级精品三级在线 | 香蕉视频 | 国产女人18毛片18精品 | 污污的视频在线观看 | 中文字幕永久免费 | 亚洲国产综合视频 | 中文字幕av网 | 中字幕一区二区三区乱码 | 亚洲综合日韩 | 成人欧美一区二区三区黑人一 | 九九色精品 | 亚洲视频免费 | 伊人99 | 日本www色| 99精品在线观看 | 天天爽天天爽天天爽 | 99久久久国产精品免费蜜臀 | 福利一二三区 | 福利在线免费视频 | 婷婷综合视频 | 久久久国产网站 | 日本两性视频 | 日韩精品一区二区免费视频 | av网在线播放 | 97色在线观看 | 最近免费中文字幕大全免费版视频 | 日本爽妇网 | 综合久久久久久久 | 亚洲素人在线 | 国产精品视频网站 | 奇米狠狠去啦 | 一级少妇片 | 三级av网址 | 国产人妖在线播放 | 亚洲色在线视频 | 麻豆影视国产在线观看 | 欧洲精品久久久久毛片完整版 | 999国产在线| 欧美不卡视频 | 美女被捅个不停 | a级片在线看 | 亚洲av成人精品一区二区三区在线播放 | 精品免费国产 | 91在线观看视频 | 日韩一区二区免费在线观看 | 黄色一级在线观看 | 91久久影院 | 一边摸一边做爽的视频17国产 | 中国特级黄色片 | 成人久久免费视频 | 欧美变态视频 | 天堂va蜜桃一区 | julia一区二区三区在线观看 | 波多野结衣在线电影 | 亚洲熟妇无码乱子av电影 | 国产精品一区二区三区久久久 | 日韩美女视频 | 五十路六十路 | 国产精品久久久精品 | 日韩av在线网址 | 成年人黄网站 | 香蕉视频网站入口 | 欧美性视屏 | 丰满肉嫩西川结衣av | 中文字幕xxxx | 国产精品久久久久电影 | 亚洲精品乱码久久久久久按摩观 | 操人视频在线观看 | 99久久精品免费看国产交换 | mm131亚洲精品 | 色丁香在线 | 国产人妻精品一区二区三 | 国产视频一二三区 | 日韩视频一区 | 免费黄视频网站 | 国产精品一线二线 | 性感美女在线观看 | 淫岳高潮记小说 | 婷婷九月综合 | 中文综合网 | 黄色一级免费片 | 正在播放经典国语对白 | 91蝌蚪九色 | 亚洲视频免费在线观看 | 无码粉嫩虎白一线天在线观看 | 国产成人午夜精品 | 伊人久久精品一区二区三区 | 夜夜夜网站 | 国产成人视屏 | 青青青免费视频观看在线 | 欧美成人乱码一区二区三区 | 亚洲一区二区视频在线播放 | av有码在线| 国产精品1区 |