반응형
상자수염그림에 평균과 표준편차 추가한 그래프입니다.
import matplotlib.pyplot as plt
import numpy as np
# 데이터 생성
np.random.seed(10)
data1 = np.random.normal(100, 10, 200)
data2 = np.random.normal(90, 20, 200)
# 두 가지 데이터 세트를 리스트로 묶기
data = [data1, data2]
# 박스 플롯 그리기
plt.boxplot(data, patch_artist=True, labels=['Data 1', 'Data 2'])
# 평균과 표준편차 계산
means = [np.mean(data1), np.mean(data2)]
stds = [np.std(data1), np.std(data2)]
# 평균과 표준편차 표시 (x 위치를 약간 옆으로 조정)
x = [1.2, 2.2] # 각 데이터 세트의 x 위치를 약간 옆으로 조정
plt.errorbar(x, means, yerr=stds, fmt='o', color='red', label='Mean ± Std Dev')
# 평균 값을 텍스트로 표시 (x 위치를 약간 옆으로 조정)
for i, (mean, std) in enumerate(zip(means, stds), start=1):
plt.text(i + 0.2, mean + std + 1, f'Mean: {mean:.2f}\nStd: {std:.2f}',
ha='center', va='bottom', color='red')
# 제목과 라벨 설정
plt.title('Box Plot of Two Data Sets with Mean and Standard Deviation')
plt.xlabel('Data Set')
plt.ylabel('Value')
# 플롯 표시
plt.show()
반응형
'Matplotlib > 상자수염그림' 카테고리의 다른 글
[파이썬] 상자수염그림 그리는 방법 (numpy 데이터) (0) | 2024.07.09 |
---|---|
[파이썬 판다스] 데이터프레임 상자수염그림 (그룹별) (0) | 2022.03.04 |
[파이썬 matplotlib] 상자수염그림 (여러 데이터) (0) | 2020.11.16 |
[파이썬 matplotlib] 상자수염그림 (0) | 2020.11.16 |
댓글