PythonのMatplotlibでヒストグラムを作成する方法をわかりやすく解説
Matplotlibは、データ可視化のために広く使われている人気のPythonライブラリです。
データの可視化は非常に重要なステップです。数値を一つずつ確認したり複雑な計算を行ったりしなくても、データ全体の傾向や特徴を直感的に把握できるようになるからです。また、定量的な洞察を効果的に伝える手段としても優れています。
Matplotlibとは
Matplotlibは、データをもとに2次元のプロット(グラフ)を作成するためのライブラリです。オブジェクト指向のAPIを備えており、作成したグラフをPythonアプリケーションに組み込むことも簡単に行えます。IPythonシェル、Jupyter Notebook、Spyder IDEなど、さまざまな環境で利用可能です。
MatplotlibはPythonで書かれており、Pythonの数値計算パッケージであるNumPyを基盤として構築されています。
Matplotlibのインストール方法
Windows環境では、以下のコマンドでMatplotlibをインストールできます。
pip install matplotlib
Matplotlibの主な依存ライブラリは以下の通りです。
Python(バージョン3.4以上) NumPy Setuptools Pyparsing Libpng Pytz FreeType Six Cycler Dateutil
ヒストグラムを描画するサンプルコード
それでは、Matplotlibを使って実際にヒストグラムを描画してみましょう。
コード例
import matplotlib
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(19875871)
meanVal = 125
stdDevVal = 35
x = meanVal + stdDevVal * np.random.randn(764)
num_bins = 36
fig, ax = plt.subplots()
n, bins, patches = ax.hist(x, num_bins, density=True)
y = ((1 / (np.sqrt(2 * np.pi) * stdDevVal)) *
np.exp(-0.5 * (1 / stdDevVal * (bins - meanVal))**2))
ax.plot(bins, y, '--')
ax.set_xlabel('X-axis')
ax.set_ylabel('y-axis')
ax.set_title('A simple histogram')
fig.tight_layout()
plt.show()実行結果
上記のコードを実行すると、正規分布に従うデータのヒストグラムが表示され、その上に釣鐘型の曲線(正規分布曲線)が破線で重ねて描画されます。
コードの解説
- 必要なパッケージをインポートし、使いやすいようにエイリアス(別名)を定義しています。
- 「random」ライブラリの「seed」関数を使って、再現性のある乱数データを生成しています。
- 平均値(mean)と標準偏差(standard deviation)の値を定義しています。
- ビン(bin)の数、つまりヒストグラムに表示される長方形のブロックの数を指定しています。
- 「subplots」関数で図(figure)と軸(axes)を作成しています。
- 「hist」関数を使ってヒストグラムを作成します。density=Trueを指定することで、面積が1になるように正規化されています。
- 「plot」関数を使って理論的な正規分布曲線を描画しています。
- set_xlabel、set_ylabel、set_title関数でX軸・Y軸のラベルとタイトルを設定しています。
- 分布は点線(破線)でも示されており、これは釣鐘型の正規分布曲線に相当します。
- 最後に「show」関数で、コンソール上にグラフを表示しています。
このように、Matplotlibを使えばわずか十数行のコードで、美しいヒストグラムを簡単に作成できます。データ分析や統計処理の現場でぜひ活用してみてください。
-
Matplotlibを使ってPythonで正弦波(サイン波)のグラフを描く方法
Matplotlibは、Pythonで最も広く使われているデータ可視化ライブラリの一つです。データを可視化することは、数値を一つひとつ確認したり複雑な計算を行ったりしなくても、データ全体の傾向や特徴を直感的に把握できるようになるため、データ分析において非常に重要なステップとなります。また、定量的な洞察を視覚的に伝えることで、聴衆への説明も格段に分かりやすくなります。 Matplotlibは主に2次元のプロット(グラフ)を作成するために使用されます。オブジェクト指向のAPIを備えており、作成したグラフをPythonアプリケーション内に簡単に組み込むことができます。IPythonシェル、Jupyt
-
PythonとKerasのFunctional APIを使ってレイヤーを作成する方法を徹底解説
はじめに TensorFlowはGoogleが提供する機械学習フレームワークです。オープンソースとして公開されており、Pythonと組み合わせてアルゴリズムやディープラーニングアプリケーションの実装など、幅広い用途に活用されています。研究用途から本番環境まで対応しており、複雑な数学的演算を高速に実行するための最適化技術を備えているのが特徴です。 「tensorflow」パッケージは、Windows環境であれば以下のコマンドでインストールできます。 pip install tensorflow Kerasはギリシャ語で「角(つの)」を意味します。Kerasは、ONEIROS(Open-ended