今天是鐵人的第18天,python中繪圖的套件除了Matplotlib還有seaborn,今天要來介紹seaborn。
seaborn:是基於Matplotlib的一個擴展,也是同樣用於實現數據圖表化的一個套件。所以在使用方式上跟Matplotlib有些相似但也有不同的地方。
介紹底下的圖表之前先預先載入需要的套件
# basic
import numpy as np
import pandas as pd
# matplotlib
import matplotlib.pyplot as plt
%matplotlib inline
# seaborn
import seaborn as sns
從 seaborn github上面找尋一個function load_dataset
可以發現使用seaborn中的這個function他是去載入其他csv檔案,而csv檔案也是放在github seaborn-data,從這個專案可以看到底下有很多csv檔案,假設要使用flights.csv
,語法就可以使用
sns.load_dataset('flights')
ironman_series = pd.Series(np.random.randn(1000))
ironman_series.plot(kind='hist')
# 或者可以使用plot.hist(ironman_series)
ironman_series.plot(kind='kde')
sns.distplot(ironman_series)
(ps:筆者在實作這邊的時候有遇到warning,筆者是直接將seaborn和Matplotlib更新即可)
ironman_df = sns.load_dataset('flights')
ironman_df = ironman_df.pivot(index='month', columns='year', values='passengers')
ironman_df.sum().plot(kind="bar")
可以看到每年乘客的數量
sns.barplot(ironman_df.sum().index,ironman_df.sum().values)
從上面兩個圖表可以看的出來seaborn的圖比matplotlib好看
語法:sns.heatmap(data, vmin=None, vmax=None, cmap=None, center=None, robust=False, annot=None, fmt='.2g', annot_kws=None, linewidths=0, linecolor='white', cbar=True, cbar_kws=None, cbar_ax=None, square=False, xticklabels='auto', yticklabels='auto', mask=None, ax=None, **kwargs)
sns.heatmap(ironman_df)