Pythonのseabornライブラリの利用方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonのseabornライブラリの利用方法について現役エンジニアが解説しています。seabornはデータの可視化を行うPythonライブラリで、matplotlibのラッパーとして動作します。seabornのスタイルを適用し、様々な場面で活用していきましょう。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

Pythonのseabornライブラリの利用方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

 

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まるでしょう

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Python講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonのseabornライブラリの利用方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

 

seabornライブラリとは?

seabornはデータの可視化(グラフ作成)を行うPythonライブラリです。

Pythonで有名な可視化ライブラリであるmatplotlibのラッパー関数(内包プログラム)として動作します。

そのため、matplotlibよりもシンプルなインターフェースで見た目のきれいなグラフを作成できるでしょう。

またseabornにはデータセットを読み込む機能があります。

 

seabornのインストール

pipを使って簡単にインストールすることができるものの、anacondaの環境ではcondaでインストールしましょう。

pipコマンド

pip install seaborn

condaコマンド

conda install seaborn

 

[PR] Pythonで挫折しない学習方法を動画で公開中

seabornの使い方

三角関数のグラフを例にseabornの基本的な使い方をみていきます。

まずは、比較のためにmatplotlibを使って、以下のコードを記述します。

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-1, 1, 100)
y = np.sin(x)
plt.plot(x, y)
plt.show()

結果は、以下のように出力されるでしょう。

Pythonでmatplotlibを使って、三角関数のグラフを描画するサンプルプログラムの実行結果

次はseabornを使って記述し、下記の1行を追加します。

inport seaborn as sns

また、plt.plot()の前に次の1行を追加することで、seabornのスタイルを適用させることが可能です。

sns.set()

以上を踏まえて先程のコードをアレンジし、以下のコードを実行します。

import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

x = np.linspace(-1, 1, 100)
y = np.sin(x)
sns.set()
plt.plot(x, y)
plt.show()

実行結果は以下のようになるでしょう。

Pythonでmatplotlibを使って、三角関数のグラフを描画し、seabornのスタイルを適用したサンプルプログラムの実行結果
先程のグラフとは違い、目盛りが追加されて見やすくなりました。

matplotlibだけでも目盛りを追加することが可能であるものの、plt.plot()の引数で指定します。

seabornでは簡単に1行に追加することで見やすいスタイルにグラフを作成することが可能です。

 

データセットの用意と各プロット出力方式

データの用意

seabornでは、機械学習で使われる有名なデータセットを読み込む機能があります。

読み込まれたデータはpandasでも取り扱いできるdataFrameの形式です。

それでは以下の1行を実行し、具体的に読み込めるデータセットを確認してみましょう。

sns.get_dataset_names()

結果は以下の通りです。

['anscombe', 
'attention', 
'brain_networks', 
'car_crashes', 
'diamonds', 
'dots', 
'exercise', 
'flights', 
'fmri', 
'gammas', 
'iris', 
'mpg', 
'planets', 
'tips', 
'titanic']

では、この中からtipsのデータを読み込んでみましょう。

データを読み込むには、以下の一行で行うことが可能です。

data = sns.load_dataset("flights")

 

データの散布図を出力する

読み込んだデータを可視化するためにpairplot関数を使いましょう。

この関数はデータのすべての変数を2つずつ組み合わせて、散布図を出力します。

なお、x軸とy軸が同じパラメータに対してはヒストグラムを出力し、引数にはdataFrameを指定します。

sns.pairplot(data)

実行すると以下のグラフが出力されるでしょう。

Pythonのseabornライブラリを使って、データセットを読み込み、pairplot関数で可視化するサンプルプログラム

seabornを利用してヒストグラムを描画してみよう

seabornでヒストグラムを出力する際にはdistplot関数を使用します。

ここでは先程読み込んだデータの中からtotal_billでヒストグラムを作成しましょう。

そのため、以下の1行を追加します。

sns.distplot(data["total_bill"], kde=False, rug=False, bins=10)

結果として、以下のグラフが出力されます。

Pythonのseabornライブラリを使って、データセットを読み込み、ヒストグラムを出力するサンプルプログラム

執筆してくれたメンター

メンター三浦

モバイルゲームを運用している会社のエンジニアをしています。趣味でWEB開発やクラウドコンピューティングもやっており、ソフトもハードもなんでもやります。

TechAcademyジュニアではPythonロボティクスコースを担当しています。好きな言語はPython, Node.js。

 

大石ゆかり

Pythonのseabornライブラリの利用方法がよく分かったので良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、Pythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。