Matplotlib-바이올린 플롯

바이올린 플롯은 다른 값에서 데이터의 확률 밀도를 표시한다는 점을 제외하면 상자 플롯과 유사합니다. 이러한 그림에는 표준 상자 그림에서와 같이 데이터 중앙값에 대한 마커와 사 분위수 범위를 나타내는 상자가 포함됩니다. 이 상자 그림 위에 겹쳐진 것은 커널 밀도 추정입니다. 박스 플롯과 마찬가지로 바이올린 플롯은 서로 다른 "범주"에서 변수 분포 (또는 샘플 분포)의 비교를 나타내는 데 사용됩니다.

바이올린 플롯은 일반 상자 플롯보다 더 많은 정보를 제공합니다. 실제로 박스 플롯은 평균 / 중앙값 및 사 분위수 범위와 같은 요약 통계 만 표시하지만 바이올린 플롯은 데이터의 전체 분포를 보여줍니다.

import matplotlib.pyplot as plt

np.random.seed(10)
collectn_1 = np.random.normal(100, 10, 200)
collectn_2 = np.random.normal(80, 30, 200)
collectn_3 = np.random.normal(90, 20, 200)
collectn_4 = np.random.normal(70, 25, 200)

## combine these different collections into a list
data_to_plot = [collectn_1, collectn_2, collectn_3, collectn_4]

# Create a figure instance
fig = plt.figure()

# Create an axes instance
ax = fig.add_axes([0,0,1,1])

# Create the boxplot
bp = ax.violinplot(data_to_plot)
plt.show()