36章seabornによる可視化
Matplotlibは、長年にわたりPythonにおける科学的な可視化の中核でしたが、望んだ結果が得られない場合が多いことを熱心な支持者でさえ認めています。よく聞かれる不満には次のようなものがあります。
- バージョン2.0以前のデフォルトの色とスタイルは、貧弱で時代遅れに見えることがある。しかし、これは初期に多かった不満で、現在では改善されている。
- Matplotlib APIは比較的低レベルであるため洗練された統計的可視化が可能であるが、多くの定型的なコードを必要とする。
- Matplotlibはpandasより10年以上前に作られたため、pandasの
DataFrame
オブジェクトを使用するようには設計されていない。DataFrame
からデータを可視化するには、Series
を抽出し、それらを適切なフォーマットに連結する必要がある。DataFrame
のラベルもインテリジェントに扱えるプロットライブラリがあると良い。
こうした諸問題に対する回答がseaborn(https://seaborn.pydata.org)です。seabornは適切な描画スタイルとデフォルトの配色、一般的な統計プロットに対するシンプルで高水準の関数、そしてpandasのDataFrame
との機能統合を、Matplotlib上のAPIとして提供します。
公平のために補足すると、Matplotlibチームは状況の変化に適応しています。「34章 Matplotlibのカスタマイズ:設定とスタイルシート」で説明したplt.style
ツールが追加され、Matplotlibはpandasデータをよりシームレスに扱えるようになっています。しかし、ここまでに説明した理由から、seabornは依然として有用なアドオンと言えます。 ...
Get Pythonデータサイエンスハンドブック 第2版 ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.