国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Pandas系列(十二)

目錄

  • 1. 折線圖

  • 2. 柱狀圖

  • 3. 直方圖

  • 4. 箱線圖

  • 5. 區(qū)域圖

  • 6. 散點(diǎn)圖

  • 7. 餅圖六邊形容器圖

  數(shù)據(jù)分析的結(jié)果不僅僅只是你來看的,更多的時候是給需求方或者老板來看的,為了更直觀地看出結(jié)果,

  數(shù)據(jù)可視化是必不可少的一個環(huán)節(jié)。這里帶大家來看下一些常用的圖形的畫法。

  數(shù)據(jù)準(zhǔn)備

1
2
3
4
5
6
7
8
9
10
# 導(dǎo)入相關(guān)庫
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib
# matplotlib.style.use('ggplot')
%matplotlib inline #總結(jié):%matplotlib inline 可以在Ipython編譯器里直接使用,功能是可以內(nèi)嵌繪圖,并且可以省略掉plt.show()這一步。
np.random.seed(100)

Pandas 的數(shù)據(jù)可視化的實(shí)現(xiàn)底層依賴于 matplotlib,所以畫圖時很多基礎(chǔ)知識需要涉及到 matplotlib。
畫圖其實(shí)就是跟各種數(shù)字打交道,這里我們先給偽造一些數(shù)據(jù)。

1
2
3
4
5
6
7
8
9
10
df = pd.DataFrame(np.random.randint(-10, 10, (10, 3)), index=pd.date_range('1/1/2000', periods=10), columns=list('ABC'))
df = df.cumsum()
df.head()
Out[112]:
            A   B   C
2000-01-01 -2  -7  -3
2000-01-02  3  -1  -3
2000-01-03 -5  -9 -11
2000-01-04 -1 -17  -4
2000-01-05  5 -12 -10

  1.折線圖

  生成數(shù)據(jù)之后,我們看下如何進(jìn)行畫圖。其實(shí)非常簡單的,調(diào)用 plot 方法就可以看到畫圖的結(jié)果了。默認(rèn)情況下參數(shù) kind='line' 表示圖的類型為折線圖。通過折線圖可以看出數(shù)據(jù)隨著某個變量的變化趨勢。

1
df.plot()

1
df.plot(x='A',y='C')

  

  2. 柱狀圖

  通過柱狀圖可以對比多個值的差別。如果想要畫出柱狀圖,可以將參數(shù) kind 設(shè)置為 bar 或者 barh。

1
2
df.plot(kind='bar')
plt.show()

可以看到,設(shè)置 kind='bar' 之后,圖形以索引為 x 軸, 列為 y 軸。

1
2
df.plot(kind='barh')
plt.show()

可以看到,設(shè)置 kind='barh' 之后,圖形以列為 x 軸, 索引為 y 軸。同樣我們也可以自己指定 x 軸和 y 軸。

1
2
3
#自己設(shè)定x軸y軸
df.plot(kind='bar',x='A',y=['B','C'])
plt.show()

 

#此外,如果想要生成堆疊條形圖的haunted,可以設(shè)置參數(shù) stacked=True。

1
2
df.plot(kind='bar',stacked=True)
plt.show()

 

  3. 直方圖

  直方圖是一種展示數(shù)據(jù)頻數(shù)/率的特殊的柱狀圖。如果想要畫出直方圖,可以將參數(shù) kind 設(shè)置為 hist??梢酝ㄟ^設(shè)置參數(shù) bins 來改變 bin 的大小。

1
2
df.plot(kind='hist')
plt.show()

1
2
df.plot(kind='hist',bins=5)
plt.show()

  

  4.箱線圖

通過箱線圖可以展示出分位數(shù),具體包括上四分位數(shù)、下四分位數(shù)、中位數(shù)以及上下5%的極值。如果想要畫出箱線圖,可以將參數(shù) kind 設(shè)置為 box。

1
2
df.plot(kind='box')
plt.show()

  5.區(qū)域圖

  如果想要畫出區(qū)域圖,可以將參數(shù) kind 設(shè)置為 area。默認(rèn)情況下,區(qū)域圖是堆積的,要生成堆積的區(qū)域圖圖,每列必須全部為正值或全為負(fù)值。

1
2
df.abs().plot(kind='area')
plt.show()

  

想要生成不堆積的區(qū)域圖,設(shè)置參數(shù) stacked=False 即可。

1
2
df.plot(kind='area', stacked=False)
plt.show()

  

  6.散點(diǎn)圖

  如果想要畫出散點(diǎn)圖,可以將參數(shù) kind 設(shè)置為 scatter,同時需要指定 x 和 y。通過散點(diǎn)圖可以探索變量之間的關(guān)系。

1
2
df.plot(kind='scatter', x='A', y='B')
plt.show()

 

可以設(shè)置參數(shù) c 作為列的名稱以為每個點(diǎn)提供顏色。

1
2
df.plot(kind='scatter', x='A', y='B', c='C')
plt.show()

  

#如果想要在單個軸上繪制多個列組,需要指定 ax。

1
2
3
ax = df.plot(kind='scatter', x='A', y='B', color='blue')
df.plot(kind='scatter', x='C', y='B', color='green', ax=ax)
plt.show()

  

7.餅圖

如果想要畫出餅圖,可以將參數(shù) kind 設(shè)置為 scatter。

1
2
3
a = df.A[:5]
a.abs().plot.pie(subplots=False,figsize=(4,4))
plt.show()

  

1
2
a.abs().plot.pie(subplots=True,figsize=(4,4))
plt.show()

如果想要自動計(jì)算出比例,可以設(shè)置參數(shù) autopct。

1
2
a.abs().plot.pie(subplots=True, figsize=(4, 4), autopct='%.2f')
plt.show()

  

  8.六邊形容器圖

  在繪制散點(diǎn)圖時,如果數(shù)據(jù)過于密集,則無法單獨(dú)繪制出每個點(diǎn),這時候可以考慮 Hexbin 圖。
  其中,左邊坐標(biāo)表示的是值的分布,右邊坐標(biāo)表示的是數(shù)據(jù)量大小與顏色的對比。一個有用的關(guān)鍵字參數(shù)是 gridsize ; 它控制x方向的六邊形數(shù)量,并且默認(rèn)為100.較大的格柵意味著更多的較小的分區(qū)。

1
2
3
4
df = pd.DataFrame(np.random.randn(1000, 2), columns=['A', 'B'])
df['B'] = df['B'] + np.arange(1000)
df.plot(kind='hexbin', x='A', y='B', gridsize=10)
plt.show()

  

1
2
df.plot(kind='hexbin', x='A', y='B', gridsize=20)
plt.show()

  

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用Pandas也可以進(jìn)行數(shù)據(jù)可視化
數(shù)據(jù)可視化干貨:使用pandas和seaborn制作炫酷圖表(附代碼)
帶你十分鐘快速入門畫圖神器 Matplotlib
淺談一款進(jìn)階軟件R的實(shí)際運(yùn)用
Pandas可視化綜合指南:手把手從零教你繪制數(shù)據(jù)圖表
使用 Python 進(jìn)行數(shù)據(jù)可視化之Matplotlib
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服