2.1.7.2.Distribution Plots

0. Distribution Plots的繪圖種類

  • sns.distplot (kde, bin)

  • sns.jointplot

  • sns.pairplot

  • sns.rugplot

1. 使用library

import seaborn as sns
  • 將圖表直接嵌入到Notebook之中

%matplotlib inline
  • 讀入資料

tips = sns.load_dataset('tips')
tips.head()

  • 等義於使用pandas內建的plot.hist或是plot(kind = 'hist')

      tips['total_bill'].hist(bins = 30)
      tips['total_bill'].plot(kind='hist', bins = 30)
      tips['total_bill'].plot.hist(bins = 30)
  • kde (Kernel distribution estimation)預設為true

    • 也可以設為False

      sns.distplot(tips['total_bill'], kde=False)
      sns.distplot(tips['total_bill'])

  • bin

sns.distplot(tips['total_bill'], kde=False, bins=30)

  • 比較資料來源中的兩個屬性之間的相關性或非相關性

    • 繪圖前可以先設定背景的方格線

      sns.set_style('whitegrid')
    • 例如比較資料中帳單金額小費間的關聯性

      sns.jointplot(x='total_bill',y='tip',data=tips)

    • 用顏色深淺來代表相關性 (顏色越深, 相關性越高)

      sns.jointplot(x='total_bill',y='tip',data=tips,kind='hex')

    • 線性回歸圖

      sns.jointplot(x='total_bill',y='tip',data=tips,kind='reg')

    • kde (Kernel distribution estimation)

      sns.jointplot(x='total_bill',y='tip',data=tips,kind='kde')

4.Pair plot

  • 可以將資料來源中的數值欄位一一比較, 畫出關聯圖

    • 輸入資料來源

      sns.pairplot(tips)

    • 加入類別欄位的比較

      • 例如比較性別在資料上的差異

      sns.pairplot(tips,hue='sex')

    • 調整色系

      sns.pairplot(tips,hue='sex',palette='coolwarm')

  • 以stick的方式表現資料

sns.rugplot(tips['total_bill'])

Last updated

Was this helpful?