Matplotlib Python 상자 그림

Suraj Joshi 2024년2월15일
Matplotlib Python 상자 그림

이 튜토리얼은 파이썬에서matplotlib.pyplot.boxplot()함수를 사용하여boxplot을 만드는 방법을 설명합니다.

상자 그림은 데이터의 최소, 1 사 분위, 중앙값, 3 사 분위및 최대값에 대한 정보를 제공하여 데이터에 대한 통찰력을 얻는 데 도움이됩니다.

Python Matplotlib의 상자 그림

import matplotlib.pyplot as plt

x = [4, 5, 6, 8, 9, 10, 10, 11, 11, 12, 13, 14, 15, 15, 15, 17, 18, 19, 22, 23, 25]

plt.boxplot(x)
plt.title("Boxplot Using Matplotlib")
plt.show()

출력:

Matplotlib를 사용하는 Python의 상자 그림

주어진 데이터 x에서 상자 그림을 그립니다. 상자 그림에서 상자는Q1에서Q3으로 확장됩니다. 상자 안의 수평선은 데이터의 중앙값을 나타냅니다. 상자 그림의 수염은 데이터의 Q3에서 최대값으로, 데이터의 최소값에서 데이터의 Q1까지 확장됩니다.

데이터의 최소값은 Q1-1.5(Q3-Q1)값에 의해 결정되고 데이터의 최대 값은 Q3+1.5(Q3-Q1)공식에 의해 결정됩니다.

import matplotlib.pyplot as plt

x = [
    1,
    4,
    5,
    6,
    8,
    9,
    10,
    10,
    11,
    11,
    12,
    12,
    13,
    14,
    15,
    15,
    15,
    17,
    18,
    18,
    19,
    22,
    23,
    25,
    30,
    33,
    35,
]

plt.boxplot(x)
plt.title("Boxplot Using Matplotlib")
plt.show()

출력:

특이 치가있는 Matplotlib를 사용하는 Python의 상자 그림

주어진 데이터 x의 상자 그림을 그립니다. 또한 플롯에서 원으로 표시되는 상자 플롯 상단에서 두 개의 이상치를 확인할 수 있습니다.

데이터 포인트는 값이Q1-1.5(Q3-Q1)보다 작거나Q3+ 1.5(Q3-Q1)보다 큰 경우 특이 치로 표시됩니다.

2D 배열을matplotlib.pyplot.boxplot()함수에 인수로 전달하면boxplot()함수는 각 배열 또는 2D 배열의 목록에 대해boxplot을 만듭니다.

import numpy as np
import matplotlib.pyplot as plt

np.random.seed(100)

data_a = np.random.randint(2, 15, size=15)
data_b = np.random.randint(5, 18, size=20)
data_c = np.random.randint(2, 20, size=30)
data_d = np.random.randint(1, 30, size=40)

data_2d = [data_a, data_b, data_c, data_d]

plt.boxplot(data_2d)
plt.title("Boxplot Using Matplotlib")
plt.show()

출력:

Matplotlib를 사용하는 Python의 다중 상자 그림

data_2d목록 내에있는 각 NumPy 배열에 대해 boxplot을 생성합니다. 따라서 하나의 그림에서 공통 축을 공유하는 4 개의 상자 그림을 얻습니다.

작가: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn