昨天介紹的資料視覺化之後,大家是否有自己練習看看呢?能畫出圖是一件很有趣的事情哦!
接著我們來介紹另一個視覺化套件 Seaborn,它是以 matplotlib 為基礎的高階繪圖套件。
這次我們實際拿鐵達尼號的資料來試試看!資料連結
更多好看的圖也可以參考 Seaborn 官方網站
import pandas as pd
import numpy as np
# visualization libraries
import matplotlib.pyplot as plt
import seaborn as sns
# print the graphs in the notebook
% matplotlib inline
了解票價和年齡的分佈圖
train = pd.read_csv('train.csv')
sns.jointplot(x='Fare', y='Age', data=train)
分組性別繪製存活數的長條圖
sns.countplot(train['Sex'], hue=train['Survived'])
繪製年齡的分佈密度圖
sns.histplot(data=train['Age'])
分組艙等(Pclass),繪製票價(Fare)與存活數的盒狀圖
sns.boxplot(y='Pclass', x='Fare', hue='Survived', data=train, orient='h')
依照性別(Sex)繪製2張小提琴圖相對年齡且標示該點是否存活
sns.violinplot(x='Sex',y='Age',data=train, hue='Survived',split=True)
cor = train.corr()
sns.heatmap(cor, cmap='coolwarm')
依照 Embarked 分三張圖繪製,繪製年齡與票價的散佈圖且標示該點是否存活
g = sns.FacetGrid(train, col = "Embarked", hue = "Survived")
g.map(plt.scatter, "Age", "Fare", alpha =.7)
g.add_legend()
有時候想直接查看倆倆變數的關係
g = sns.PairGrid(train)
g.map(plt.scatter)
圖太大僅部分截圖