Python で配列をプロットする

Vaibhav Vaibhav 2023年1月30日
  1. Python で 1-D 配列をプロットする
  2. Python で 2 次元配列をプロットする
Python で配列をプロットする

データを視覚化すると、データの一般的な理解が向上し、記憶に役立ちます。これは、人間はテキストよりも視覚的なものを覚えている傾向があるためです。利用できるデータはたくさんあり、それを理解するには適切に構造化された形式が必要であるため、データの視覚化は非常に重要です。このアクティビティは、すべてのデータサイエンティストと機械学習愛好家の日常業務の一部です。データをよりよく理解し、優れた効率的な機械学習モデルを構築するには、データを視覚化する必要があります。

多くの場合、データは配列の形式で表され、最終的にはデータをプロットする必要があります。この記事では、Python を使用してこのようなデータをプロットする方法について説明します。

コードを進める前に、1つのことを理解する必要があります。配列は n 次元にすることができます。つまり、配列内に配列(2-D 配列)、または配列内にさらに配列を持つ配列(3D 配列)などを含めることができます。また、次元の数が増えると、配列のプロットの複雑さが増します。このような場合、配列は、視覚化を向上させる他の種類のグラフをプロットまたはプロットするのに適した別の形式に変換する必要があります。この記事では、1D および 2D 配列のプロットについて説明します。

視覚化を目的とした包括的な Python ベースのライブラリである Matplotlib と、配列をプロットするための NumPy を使用します。

これらについての詳細はこちら (Matplotlib)とこちら (NumPy)を参照してください。

Python で 1-D 配列をプロットする

1 次元配列をプロットするには、次のコードを参照してください。

import numpy as np
import matplotlib.pyplot as plt

x = np.array(range(0, 10))
y = np.array([100, 23, 44, 12, 55, 85, 69, 33, 75, 2])
plt.title("Plotting 1-D array")
plt.xlabel("X axis")
plt.ylabel("Y axis")
plt.plot(x, y, color="red", marker="o", label="Array elements")
plt.legend()
plt.show()

変数 y はプロットする必要のあるデータを保持し、変数 x はインデックスを保持します。ここでは、プロットの目的でも、0 ベースのインデックス付けが考慮されています。この x = np.array(range(1, 11)) を追加することで、インデックスを 1 ベースのインデックスに戻すこともできることに注意してください。プロット関数は、最初に x 軸のデータを取得し、次に y 軸のデータを取得します。color 引数は折れ線グラフの色を設定し、marker 引数は折れ線グラフ上の点をマークするために使用される記号を設定し、label 引数はこの特定の線に表示されるラベルを設定します。plt.legend() がないと、ラベルに関する情報がグラフに表示されないことに注意してください。

上記のコードの出力は次のようになります。

Python で 1D 配列をプロットする

Python で 2 次元配列をプロットする

2 次元配列をプロットするには、次のコードを参照してください。

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.pyplot import figure

figure(figsize=(8, 6))
x = np.array(range(0, 10))
y = np.array(
    [
        [32, 69, 92, 81, 27, 97, 64, 98, 26, 22],
        [85, 76, 63, 44, 94, 52, 71, 66, 2, 62],
        [45, 80, 46, 24, 10, 74, 10, 33, 12, 60],
        [73, 94, 21, 6, 93, 74, 36, 47, 16, 99],
        [96, 84, 66, 12, 43, 58, 17, 16, 28, 6],
        [83, 4, 56, 94, 97, 36, 94, 41, 74, 14],
        [90, 13, 11, 71, 79, 49, 9, 69, 73, 61],
        [94, 52, 28, 18, 14, 15, 91, 95, 16, 42],
        [73, 35, 40, 25, 46, 25, 33, 1, 99, 30],
        [61, 7, 89, 33, 94, 64, 1, 60, 41, 81],
    ]
)
plt.title("Plotting a2-D array")
plt.xlabel("X axis")
plt.ylabel("Y axis")

for i, array in enumerate(y):
    plt.plot(
        x,
        array,
        color=np.random.rand(
            3,
        ),
        marker="o",
        label=f"Array #{i}",
    )

plt.legend(loc="center left", bbox_to_anchor=(1, 0.5))
plt.show()

変数 y2-D 配列を保持します。2-D 配列の各配列を反復処理し、ランダムな色と一意のラベルでプロットします。プロットが完了したら、凡例ボックスの位置を変更してプロットを表示します。

上記のコードの出力は次のようになります。

Python で 2D 配列をプロットする

著者: Vaibhav Vaibhav
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

関連記事 - Python Array