Python
 Computer >> コンピューター >  >> プログラミング >> Python

Matplotlibで長さの異なるデータから箱ひげ図を作成する方法

Matplotlibで可変長データを使った箱ひげ図を作成する方法

Matplotlibでは、要素数(データ長)が異なる複数のデータセットでも、そのまま箱ひげ図(ボックスプロット)として描画できます。リストのリスト形式でデータを渡すだけで、各データセットごとに独立した箱ひげ図が表示されます。

作成手順

  • 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。
  • データポイントのリストを作成します。各リストの長さは異なっていても問題ありません。
  • boxplot() メソッドを使用して箱ひげ図を作成します。
  • 図を表示するには show() メソッドを使用します。

コード例

from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

data = [[2, 4, 1, 3], [0, 4, 3, 2], [0, 0, 1, 0]]

plt.boxplot(data)

plt.show()

この例では、それぞれ4つの要素を持つ3つのデータセットを1つのリストにまとめて boxplot() に渡しています。各データセットの長さが異なる場合でも、同じ方法でそのまま描画できます。

出力結果

Matplotlibで長さの異なるデータから箱ひげ図を作成する方法

実行すると、各データセットに対して中央値・四分位範囲・ひげ(データの分布範囲)が示された箱ひげ図が3つ並んで表示されます。これにより、複数グループ間のばらつきや外れ値をひと目で比較できます。


  1. Matplotlibで漸近線・不連続点を含むグラフを正しく描画する方法

    はじめにMatplotlibで y = 1/x のような関数をそのままプロットすると、x = 0 付近で値が発散し、グラフ上に不自然な縦線が表示されてしまうことがあります。これは数値計算では厳密な「無限大」を扱えず、0に極めて近い大きな値として計算されるためです。本記事では、numpyとMatplotlibを組み合わせて、漸近線(不連続点)を持つ関数を見やすく描画する手順を解説します。処理の手順numpyを使ってx・yのデータポイントを作成します。plt.axis(off) で軸の表示をオフにします。plot() メソッドでx・yのデータをもとに曲線を描画します。axhline() で水平方向

  2. Matplotlibを使ってPythonで複数の図を横並びに描画する方法

    Matplotlibで複数の図を並べて描画する手順 PythonのMatplotlibを使えば、subplot()メソッドを活用することで、複数の図を1つのウィンドウ内に横一列に並べて簡単に表示できます。ここでは、同じランダムデータを4種類のカラーマップで可視化する例を紹介します。 具体的には、以下の手順で実装します。 numpyを使ってランダムなデータ(5×5の行列)を作成します。 plt.subplot(nrows, ncols, index)で現在の図にサブプロットを追加します。今回は「nrows=1、ncols=4」のレイアウトで、index=1から順に配置していきます。 imsho