Pythonで幅指定の棒グラフを横向きに描く方法

Pythonでグラフを描く際のライブラリ紹介

Pythonには、グラフを描くための様々なライブラリが存在します。その中でも、主に使われるライブラリとしては、Matplotlib、Seaborn、Bokehなどがあります。

今回は、Matplotlibを使って棒グラフを描く方法を説明します。

棒グラフを描く基本的なコードの説明

棒グラフを描くためには、Matplotlibのpyplotモジュールを使います。

まずは、以下のコードを実行して、棒グラフを描いてみましょう。

import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 8, 6, 4, 2]
plt.bar(x, y)
plt.show()

このコードでは、x軸に1,2,3,4,5を、y軸に10,8,6,4,2をプロットしています。

plt.bar()で棒グラフを描画し、plt.show()でグラフを表示します。

棒グラフの幅を指定する方法

棒グラフの幅を指定するには、plt.bar()の引数にwidthを指定します。

以下のコードを実行して、棒グラフの幅を指定してみましょう。

import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 8, 6, 4, 2]
plt.bar(x, y, width=0.5)
plt.show()

このコードでは、plt.bar()の引数にwidth=0.5を指定しています。これにより、棒グラフの幅が0.5になります。

棒グラフを横向きに描く方法

棒グラフを横向きに描くには、plt.barh()を使います。

以下のコードを実行して、棒グラフを横向きに描いてみましょう。

import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 8, 6, 4, 2]
plt.barh(x, y)
plt.show()

このコードでは、plt.barh()を使って、棒グラフを横向きに描画しています。

具体的なサンプルコードとその説明

以下のコードは、棒グラフの幅を指定して、横向きに描画する例です。

import matplotlib.pyplot as plt
x = ['A', 'B', 'C', 'D', 'E']
y = [10, 8, 6, 4, 2]
plt.barh(x, y, height=0.5, color='green')
plt.title('Sample Bar Graph')
plt.xlabel('Value')
plt.ylabel('Category')
plt.show()

このコードでは、以下のような設定を行っています。

  • x軸には、カテゴリ名を指定しています。
  • 棒グラフの幅をheight=0.5で指定しています。
  • 棒グラフの色をcolor=’green’で指定しています。
  • グラフのタイトル、x軸のラベル、y軸のラベルを指定しています。

応用例として、複数の棒グラフを同時に描く方法

複数の棒グラフを同時に描く場合は、plt.bar()を複数回呼び出すことで実現できます。

以下のコードは、複数の棒グラフを同時に描画する例です。

import matplotlib.pyplot as plt
x = ['A', 'B', 'C', 'D', 'E']
y1 = [10, 8, 6, 4, 2]
y2 = [8, 6, 4, 2, 1]
plt.bar(x, y1, width=0.4, label='Data 1')
plt.bar([i + 0.4 for i in range(len(x))], y2, width=0.4, label='Data 2')
plt.legend(loc='upper left')
plt.title('Multiple Bar Graph')
plt.xlabel('Category')
plt.ylabel('Value')
plt.show()

このコードでは、以下のような設定を行っています。

  • x軸には、カテゴリ名を指定しています。
  • 2つの棒グラフの幅をwidth=0.4で指定しています。
  • 2つの棒グラフをそれぞれx軸の位置をずらして描画しています。
  • 凡例を表示するために、plt.legend()を呼び出しています。
  • グラフのタイトル、x軸のラベル、y軸のラベルを指定しています。

まとめ

今回は、PythonのMatplotlibを使って、棒グラフを描画する方法を紹介しました。

棒グラフの幅を指定する方法や、棒グラフを横向きに描画する方法についても説明しました。

また、複数の棒グラフを同時に描画する方法についても紹介しました。

これらの方法を使って、様々なデータを可視化することができます。