icon
icon

Pythonでhistogramを描く方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonでhistogramを描く方法について現役エンジニアが解説しています。ヒストグラムとは、度数分布表をグラフに表したものです。Pythonではmatplotlibライブラリを使うとヒストグラムを作成することが出来ます。平均、標準偏差、データ数などを設定します。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Pythonでhistogramを描く方法について解説します。histogramを使えるようになると、データを誰でもわかるように可視化やグラフ・図形化することができるようになります。ぜひ参考にしてみてください。

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

 

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

 

田島悠介

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

大石ゆかり

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

田島悠介

Pythonでhistogramを描く方法について詳しく説明していくね!

大石ゆかり

お願いします!

この記事ではPythonでヒストグラムを描く方法について解説します。データの解析などで非常に役に立つ方法なので一度実践してみると良いと思います。

ヒストグラムとは?

まずは、ヒストグラムについて説明します。Pythonはデータサイエンスによく使われる言語でもあり、そのためのツールが様々に用意されています。データサイエンスに重要なツールの1つがデータ可視化ツールです。

データの解析を行いたいときや、データへの理解を深めたいときには、グラフなどの形で可視化をすることが重要です。ヒストグラムはそのようなデータの可視化で役に立つグラフです。

ヒストグラムとは、度数分布表をグラフに表したもので、次のようなものです。

pythonでヒストグラム・度数分布票を描く方法。サンプル画像。

例えば、あるテストの結果について生徒の出来を確認したいとします。この場合は、上のヒストグラムのように、横軸をテストの点数、縦軸をその点数を取った人の人数にしてグラフにすると非常にわかりやすいです。

このように、データの分布を可視化する方法の1つとしてヒストグラムがあります。Pythonではmatplotlibというライブラリでかんたんにデータからヒストグラムを作成することができます。

matplotlibのインストール

Pythonでヒストグラムを作成するには、先述したようにmatplotlibと呼ばれるライブラリが必要です。
そこで、まずはmatplotlibをインストールしましょう。

Windowsの場合はコマンドプロンプトで、Macの場合はターミナルを開いて、

pip install matplotlib

を実行してください。
Successfully installed ~と表示されればインストールは完了ですが、念の為、

pip list

でインストールされていることを確認しておきましょう。

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

ヒストグラムを描いてみよう

それでは実際にヒストグラムを描いてみます。今回はデータを自分で生成して、それを可視化するという手順で行います。

実行は、jupyter notebookで実行することを想定しています。生成するデータを先程説明した例のような、テストの点数であるとします。

まずは、データ生成のためのnumpyライブラリと、先程インストールしたmatplotlibのインポートを行って、

import numpy as np
import matplotlib.pyplot as plt
matplotlibでjupyter notebook上に表示するためのマジックコマンド(%で始まる部分)、

%matplotlib inline

を実行します。

続いて、表示するためのデータ生成を行います。

test_scores = np.random.normal(60, 10, 500)

を実行します。np.random.normal()の引数は、(平均, 標準偏差, データ数)なので、この場合は、平均点60点、標準偏差10点、500人のテストの点数のデータを生成したことになります。

あとはデータをヒストグラムにするだけです。

これは1行で、

plt.hist(x, bins=100)

を実行するだけで十分です。

binsというのは、ヒストグラムで表示するバーの数です。ここの数字を変更して行ってみると理解が深まると思います。あとは、グラフのタイトルをつけて、表示します。

plt.title('Result of Exam') #タイトル
 plt.xlabel('Score') #横軸のタイトル
 plt.ylabel('Number of Students') #縦軸のタイトル
plt.show() #グラフの表示

 

Pythonのライブラリmatplotlibで作成したヒストグラムの画像

を実行すれば、上記のような画像が表示されると思います。実際のテストの点数もおおよそ正規分布に従っているので、イメージしやすいのではないでしょうか。

以上で、Pythonでのヒストグラムの作成する方法について紹介しました。matplotlibにはヒストグラム以外にも様々なグラフが作成できるので、ぜひ調べてみてください。

関連記事:PythonでMatplotlibで作成したグラフを保存する方法を現役エンジニアが解説【初心者向け】

関連記事:PythonのライブラリMatplotlibで棒グラフを描く方法【初心者向け】

 

監修してくれたメンター

メンターOS

AIプログラミングを使って開発を行う。

プログラミング歴は約3年でPythonは割と得意。好きな物理理論は一般相対性理論で動物も好き。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

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

大石ゆかり

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

 

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

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する