LoginSignup
2
3

More than 3 years have passed since last update.

グラフをxkcd風に作成する

Posted at
  • 製造業出身のデータサイエンティストがお送りする記事
  • 今回はmatplotlibでxkcd風(コミック風)にグラフを作成する機能を試してみました。

はじめに

基本的な可視化は別の記事できちっと整理しておりますので、そちらを参照してください。

xkcdとは

xkcdとは、簡単に言うとコミック風の出力する機能らしいです。詳しいことはこちらを参照してください(xkcdとは)。

xkcdを試してみる

実装は凄い簡単です。1行だけスクリプトを追加するだけで全てのグラフがxkcd風になります。

注意
一度、jupyter notebookで実行するとずっとxkcd風になってしまいますので、戻す場合はカーネルをリセットする必要があります。

追加するコードは下記です。

plt.xkcd()

ヒストグラム

まずはヒストグラムを描画してみようと思います。

# ライブラリーのインストール
import numpy as np 
import pandas as pd
from sklearn.preprocessing import StandardScaler

from pandas.plotting import *
import seaborn as sns
import matplotlib.pyplot as plt
%matplotlib inline
plt.xkcd()

import os

file_path = 'https://archive.ics.uci.edu/ml/machine-learning-databases/auto-mpg/auto-mpg.data'
file_name = os.path.splitext(os.path.basename(file_path))[0]
column_names = ['MPG','Cylinders', 'Displacement', 'Horsepower', 'Weight',
                  'Acceleration', 'Model Year', 'Origin'] 

df = pd.read_csv(
    file_path, # ファイルパス
    names = column_names, # 列名を指定
    na_values ='?', # ?は欠損値として読み込む
    comment = '\t', # TAB以降右はスキップ 
    sep = ' ', # 空白行を区切りとする
    skipinitialspace = True, # カンマの後の空白をスキップ
    encoding = 'utf-8'
) 

# ヒストグラム
df['MPG'].plot(kind='hist', bins=12)

image.png

箱ひげ図

次は箱ひげ図を描画してみようかと思います。

箱ひげ図(boxplot)
sns.boxplot(x='Model Year', y='MPG', data=df.sort_values('Model Year'), color='cornflowerblue')

image.png

バイオリン図

最後にバイオリン図を作成してみようと思います。

# violin plot 
sns.violinplot(x='Model Year', y='MPG', data=df.sort_values('Model Year'), color='cornflowerblue')

image.png

さいごに

最後まで読んで頂き、ありがとうございました。
今回は、xkcd風でグラフを作成してみました。
少し遊び心を持った資料を作成する際には面白いですね。

訂正要望がありましたら、ご連絡頂けますと幸いです。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3