MENU
  • 手帳
    • 手帳 リフィル自作した手帳のリフィルを公開していきます!
    • 手帳 レビュー
    • 手帳 アイデア
    • 手帳 ジャーナリング
  • 独学
    • 独学 キャリアコンサルタント国家資格キャリアコンサルタントの試験対策や学んだコトなどをまとめていきます!
    • 独学 プログラミング
    • 独学 リスキリング自分で楽しく効率よく学習するリスキリングのTipsや参考情報をまとめますᕦ(ò_óˇ)ᕤ
  • ワーク
    • キャリア 転職
    • マインドセット
    • マインドフルネス自分の気持ちを高めて、常に前向きに平常心でいるためのTipsや参考情報をまとめます!
    • ツール活用 効率化
人気の記事ランキングTOP 5!
  • 【自作手帳】自作リフィルのおすすめテンプレート10選!(PDF無料ダウンロード可!)
  • 【2026最新】ジャーナリングのおすすめ本10選!Unlimited対応も!
  • 【自作手帳】Word,Excelで出来る!A5システム手帳のリフィル自作方法
  • 【無料】Goodnotes6で使えるデジタルプランナー・テンプレート10選(PDFダウンロード可)
  • 【保存版】Goodnotes6の使い方まとめ!PDFの読み込み・PDF化・メモの書き方を徹底解説
手帳でキャリアも人生も自分らしく!
キャリアの実験室
  • 手帳
    • 手帳 リフィル自作した手帳のリフィルを公開していきます!
    • 手帳 レビュー
    • 手帳 アイデア
    • 手帳 ジャーナリング
  • 独学
    • 独学 キャリアコンサルタント国家資格キャリアコンサルタントの試験対策や学んだコトなどをまとめていきます!
    • 独学 プログラミング
    • 独学 リスキリング自分で楽しく効率よく学習するリスキリングのTipsや参考情報をまとめますᕦ(ò_óˇ)ᕤ
  • ワーク
    • キャリア 転職
    • マインドセット
    • マインドフルネス自分の気持ちを高めて、常に前向きに平常心でいるためのTipsや参考情報をまとめます!
    • ツール活用 効率化
キャリアの実験室
  • 手帳
    • 手帳 リフィル自作した手帳のリフィルを公開していきます!
    • 手帳 レビュー
    • 手帳 アイデア
    • 手帳 ジャーナリング
  • 独学
    • 独学 キャリアコンサルタント国家資格キャリアコンサルタントの試験対策や学んだコトなどをまとめていきます!
    • 独学 プログラミング
    • 独学 リスキリング自分で楽しく効率よく学習するリスキリングのTipsや参考情報をまとめますᕦ(ò_óˇ)ᕤ
  • ワーク
    • キャリア 転職
    • マインドセット
    • マインドフルネス自分の気持ちを高めて、常に前向きに平常心でいるためのTipsや参考情報をまとめます!
    • ツール活用 効率化
  1. ホーム
  2. 独学
  3. 独学 プログラミング
  4. 【Python入門】seabornでグラフ化 | データをうまく魅せる”ビジュアル化”7選

【Python入門】seabornでグラフ化 | データをうまく魅せる”ビジュアル化”7選

2024 11/21
独学 プログラミング
ワタシ

今回はPythonによる”データの可視化”について言及します。

Pythonでデータ分析をしよう!と思った時に、実務レベルで考えると

綺麗なグラフってそれっぽい見た目で魅せられないか?

と思う時が多々あります。結論からいうと、当然できる!話ですので、具体的な方法論・コードについて下記に触れます。

私のような非エンジニアの方がプログラミングをかじって自主勉強する際の参考になれば幸いです(‘◇’)ゞ

あわせて読みたい
【Python入門】コピペしてそのまま使えるPythonの自動化プログラムまとめ ワタシ ども、らーにゃです。今回はPythonのプログラムについてまとめます。 Pythonをもっと身近なことに応用できないか? プログラミングをかじり始めた人で、こんなこ...
目次

今回の論点整理

今回のアウトプット

今回は以下のように多くの視点で分析が視覚化できるようになりたいと思います。

分析の見た目は報告する際には最重要になると思うので意図したアウトプットをどのように出せばいいかの感覚をざっくりつかむためにそれぞれ視覚化の方法についてまとめます。

ただ、一つ一つをきりとると、簡易的なコード一行だけだったりするので全く難しくないです。

今回の抑えドコ

そこで、今回は上記を実現する手順について下記に備忘録的にまとめたいと思います。

抑えドコ!
  • 今回の焦点
    ▷分析結果をそれっぽく考察・報告が出来る
    (想定場面:意思決定者にデータ分析の報告が必要な状況)
  • ポイント
    視覚化の必要性とは?
    matplotlab, seabornとは?
    ggpairs, heatmapとは?

ポイントを順に触れていきます。

今回のポイント

①視覚化の必要性

まず、最初に考えたいのが分析結果の「見た目」についてです。つまり、どうビジュアライズさせるか。という視点です。

個人的に、上司に分析結果を報告する際は特に、分析内容以上に分析結果の見た目が大事だと感じています。(本質的ではないことは重々承知の上で)

「伝え方が9割」という有名な本がありますが、意思決定者に一瞬で感覚的に良さを理解してもらわない限り、どんなに良いことをしても苦労が水の泡になるのが実際のビジネスだと思います。

ではどうやって視覚化するか?例えば代表的なところでいうと以下のようなものがあります。

代表的な手法

▽ヒストグラム
要は、棒グラフ的なやつです。エクセルのグラフ化で一番最初にでる、最もシンプルなやつですね。棒グラフをカッコイイ表現にしたらヒストグラムになった程度に抑えればよい気がします。

▽箱ひげ図
あまり聞きなれないですが、各値の密度・分布も考慮したグラフです。どこにどれだけデータが密集していて平均値はあてになるのか?など数字の意味付けを直感的にできます(ちなみに最近は高校の教科書にも出てきます)。

▽クロス分析
前回まとめた、ピポットテーブル的な分析(クロス集計)のことです。2軸を組み合わせて分析できるメリットが非常に大きいのですが、可視化させるには少しコツが必要そうです。(後述します)

上にいくほど直感的に良さが理解でき、下に行くほど説明力が上がる気がします。これらを踏まえて、次から実際のデータ(フリーデータ)を元に、グラフ化の方法を考えます。

②matplotlab, seabornとは?

ここで、グラフのビジュアライズさせる際に使いたいライブラリがmatplotlab, seabornになります。

前者がいわば可視化ツールの基本セットで、後者が見た目を更に映えさせるための応用版というような位置づけかと思います。

例えば、下準備は以下のように読み込みます。

import matplotlib.pyplot as plt
import seaborn as sns; sns.set() 
import numpy as np #数式を取り扱う際に読み込むライブラリ

iris = sns.load_dataset('iris') #フリーデータiris読み込み

尚、このフリーデータの読み込み部分(sns.load.dataset部)については前回触れていますのでそちらをご参照ください。

あわせて読みたい
【Python入門】Excelの”ピボットテーブル”をPythonでプログラムする ワタシ 今回はPythonでエクセルのピポットテーブル的なことを行います。 Pythonでデータ分析をしよう!と思った時に、実務レベルで考えると エクセルにピポットテーブル...

さて、データを読み込んだら後は色々と試すのみです。下記に5点の可視化をしてみます。

視覚化基礎5選!
  1. ヒストラグラムを並べる
  2. 散布図を一覧で一覧化する
  3. 折れ線グラフを記載する
  4. 箱ひげ図を表示する
  5. グラフを組み合わせる

以下、順に触れます。

▽①ヒストグラムを並べるのは以下の通り

#各変数ごとにヒストグラムを重ねます。
sns.distplot(iris.query('species=="setosa"').sepal_length, kde=False, bins=np.linspace(4,8,9), label="setosa")
sns.distplot(iris.query('species=="versicolor"').sepal_length, kde=False, bins=np.linspace(4,8,9), label="versicolor") 
sns.distplot(iris.query('species=="virginica"').sepal_length, kde=False, bins=np.linspace(4,8,9), label="virginica") 
plt.legend()

▽②散布図を一覧で一覧化するは以下の通り

#変数を指定してマッピングします。
sns.scatterplot(x='sepal_length', y='sepal_width', hue='species', data=iris)

▽③折れ線・関数グラフを記載するは以下の通り

# x,yを指定してプロットしてグラフ化します。
x = [100, 200, 300, 400, 500, 600]
y = [10, 20, 30, 50, 80, 130]
plt.plot(x, y);

#三角関数などを入力することも可能
x = list(np.linspace(0,10,30))
y = list(np.sin(x))
sin = pd.DataFrame(list(zip(x,y)), columns=['x','y'])
sns.lineplot(x="x", y="y", data=sin)

▽④箱ひげ図を表示するは以下の通り

#変数を指定して箱ひげ図を並べます
sns.boxplot(x='species', y='sepal_length', data=iris)

▽⑤グラフを組み合わせるは以下の通り

time = np.array([1, 2, 3, 4, 5])
bar_height = np.array([10, 20, 30, 40, 50])
line_height = np.array([100, 300, 200, 500, 400])
 
# 棒グラフを出力
fig, a1 = plt.subplots()
a1.bar(time, bar_height, align="center", color="lightblue", linewidth=0)
a1.set_ylabel('bar_height')

# 折れ線グラフを出力
a2 = a1.twinx()
a2.plot(time, line_height, linewidth=4, color="orange")
a2.set_ylabel('line_height')

③ヒートマップ, ggpairsとは?

そして最後に考えたいのが、クロス集計の可視化についてです。

前回も伝えた通り、個人的に「見やすくかつ、説明力がある」最も実務で使いやすい分析はクロス集計だと思っているので、この視点での可視化は最重要だと思っています。

そこで、使える手段は大きくは二つ

抑えたい手法
  • heatmap:表に色をつけて感覚的に分かるようにする
  • ggpairs:2軸の組み合わせを全て一覧化する

順に触れます。

まず、前回のピボットテーブルの読み込みで扱った時と同じコード(旅客気の数字)を使ってヒートマップを作成します。

#飛行機の推移
import seaborn as sns
import pandas as pd

df_flights = sns.load_dataset('flights')
df_flights_pivot = pd.pivot_table(df_flights, values='passengers', columns='year', index='month')
sns.heatmap(df_flights_pivot)

そして後者に関しては、ポイント②で扱ったirisのフリーデータを元に記載します。コードとしては以下のみ。

#分析の軸を考える(仮説づくり)時に使う。
import matplotlib.pyplot as plt
import seaborn as sns

df = sns.load_dataset("iris")
sns.pairplot(df, hue="species", size=2.5)
plt.show()

前者のヒートマップはエクセルでも表の可視化機能として存在していて身近です。好きな色にしたりすることで、クロス集計結果を”なんかそれっぽくすること”が出来ます。報告時には重宝したい手法です。

後者は分析の視点でどの仮説が有力かをあぶりだす分析の分析作成過程で使うような分析です。これは、どちらかというと詳しい人向けの分析、もしくは”分析やってるよ風に魅せる”時に戦略的に使うべきかと思っております。(本質的ではないですが)

データ分析の報告時に考えるべきこと

上記で、手法を記載しましたが、先にも述べた通り業務でデータ分析をする際に軽視されながらも実は非常に重要な視点が

「分析している風の見た目か」

ということです。これは研究室にいた時とビジネスをしている時とで180度違うと思います。個人的にはどちらも変だなと思うことがありましたが、極端な話を言うと以下のような視点が意識されます。

▽研究室での報告時
→とにかく数字の精度と新規性(複雑で良い)。論文を通すにも如何に高度で複雑なことをやっているかをプレゼンできないと審査が通らない印象。

▽ビジネスでの報告時
→とにかく現業へのインパクトとシンプルさ。パッと見た時にお金になるのかならないのか、3秒で誰もが理解できるプレゼンでないと通らない印象(精度はどうでもいい)。

そのため、ビジネスの場合はクロス集計で傾向つかんで、それっぽくパワポをまとめるのが一番フィット感がある気がします。

ただ、その上で、分析結果やプロセスに深く突っ込んで質問された場合のみ、上記を組み合わせ、訴求したいポイント(重要な仮説)を根拠をもって語る必要があるのかなと思います。(分かりやすく視覚化した前提で)

まとめ

今回は分析結果の視覚化の方法についてまとめました。ポイントは以下の3点です。

分析で視覚化したい点
  • 視覚化の必要性とは?
    ▷報告時は分析内容以上に視覚化が大事
  • matplotlab, seabornとは?
    ▷視覚化に特化したライブラリ
  • ggpairs, heatmapとは?
    ▷クロス集計の可視化と仮説作りのお供

視覚化をすると書くと「なんだそれだけか」となりがちですが、実は「意思決定を促進するやり方」と考えると非常に有益な手法だと思います。

そのため、データ分析の学習をすることと合わせて、どのような視覚化をすると”映えするのか”という視点ももちあわせながら勉強していきたいと思います。

ご精読頂きありがとうございました。
m(_ _)m

【参考】Python初心者のお勉強のお供

上記の内容と併せて実務で活かすという視点では下記の参考図書も合わせて確認すると理解が深まります(-_-)

▼オススメの参考書籍(Kindle)▼

Python2年生 データ分析のしくみ 体験してわかる!会話でまなべる!
created by Rinker
¥2,178 (2026/02/03 16:30:15時点 Amazon調べ-詳細)
  • Kindle
  • Amazon
  • 楽天市場
  • Yahooショッピング
Marketing Python マーケティング・パイソン AI時代マーケターの独習プログラミング入門(できるビジネス) できるビジネスシリーズ
created by Rinker
¥2,376 (2026/02/03 19:56:30時点 Amazon調べ-詳細)
  • Kindle
  • Amazon
  • 楽天市場
  • Yahooショッピング
Python実践データ分析100本ノック
created by Rinker
¥2,376 (2026/02/03 16:30:16時点 Amazon調べ-詳細)
  • Kindle
  • Amazon
  • 楽天市場
  • Yahooショッピング

▼おすすめの動画学習(Udemy)▼

>>ゼロからPythonで学ぶ人工知能と機械学習 【2023年最新版】

>>現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用

>>独学で身につけるPython〜基礎編〜【業務効率化・自動化】

【参考】Python初心者が抑えたいポイント集

Python(主にデータ分析・自動化)に関しては

下記に実践したポイントをまとめています。基本的にコピペするだけでそのまま使えます٩( ᐛ )و

あわせて読みたい
【Python入門】コピペしてそのまま使えるPythonの自動化プログラムまとめ ワタシ ども、らーにゃです。今回はPythonのプログラムについてまとめます。 Pythonをもっと身近なことに応用できないか? プログラミングをかじり始めた人で、こんなこ...

業務効率化・自動化においてはGoogle Apps Scriptもセットで学ぶことをオススメ!

こちらもコピペしてすぐに使えます!

あわせて読みたい
【GAS入門】コピペしてそのまま使えるGoogle Apps Scriptプログラム一覧 ワタシ ども、らーにゃです。今回はGASの活用についてまとめます。 身の回りのことをもっと自動化できないものか? 仕事でもプライベートでも忙しくなるほどに自動化の...

PythonとGoogle Apps Scriptどちらを深めようかを迷っていればこちら!

あわせて読みたい
【徹底比較】PythonとGASをどちらを学ぶべきか?実際に両方を学んで分かった違いとオススメ学習法 ワタシ ども、らーにゃです。今回はPythonとGASを比較していきます。 自分は非エンジニアだけど… 「もっともっと効率化したい!」 「プログラムを書けるようになりたい...
独学 プログラミング
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
  • 【要約】ビジョナリーカンパニー2|成果の出る組織の条件・マネジメントとは
  • 【Python入門】回帰分析や分類問題が使えるsklearnの使い方

この記事を書いた人

らーにゃのアバター らーにゃ

ビビっときたTipsや手帳術を発信します ٩( ᐛ )و

●家族:フルキャリ妻と子供2人

●資格:国家資格キャリアコンサルタント

●趣味:手帳歴20年 | 自作歴12年| デジプラ歴4年

関連記事

  • 【GAS】ショートカットを利用してApple Watch→スプレッドシートのデータ連携を行う
  • 【レビュー】ChatGPTの使い方 | プログラミング初心者の応用 (GAS/Python)
  • 【GAS】Google Fitのデータをスプレッドシートに引き抜くプログラムを考える
  • 【徹底比較】PythonとGASをどちらを学ぶべきか?実際に両方を学んで分かった違いとオススメ学習法
  • 【GAS】TogglのAPIを利用したデータ連携の仕様変更について
  • 【Python入門】コピペしてそのまま使えるPythonの自動化プログラムまとめ
  • 【Python自動化】GoogleスプレッドシートにPythonからデータを流し込む方法
  • 【Python自動化】タスクスケジューラで定時にPythonファイルを自動実行する方法

コメント

コメントする コメントをキャンセル

ブログの記事一覧
カナダでキャリコン/コーチをしながら理想のセカンドキャリア作るためのヒントや考え方をブログやYouTubeで発信中!

●家族:フルキャリ妻1人、子供2人
●資格:国家資格キャリアコンサルタント
●趣味:手帳歴20年 | 自作歴12年| デジプラ歴4年
人気の記事ランキングTOP5!
  • 【自作手帳】自作リフィルのおすすめテンプレート10選!(PDF無料ダウンロード可!)
  • 【2026最新】ジャーナリングのおすすめ本10選!Unlimited対応も!
  • 【自作手帳】Word,Excelで出来る!A5システム手帳のリフィル自作方法
  • 【無料】Goodnotes6で使えるデジタルプランナー・テンプレート10選(PDFダウンロード可)
  • 【保存版】Goodnotes6の使い方まとめ!PDFの読み込み・PDF化・メモの書き方を徹底解説
目次
検索
  • プロフィール
  • サイトマップ
  • プライバシーポリシー
  • お問い合わせ

© キャリアの実験室.

  • メニュー
  • ジャーナル
  • 自作手帳
  • アイデア
目次