728x90
반응형
오늘 박스플롯으로 시각화 하는 것이 더 좋다는 피드백을 받고 변경하면서, 이슈가 발생했다.
labels와 positions 크기 호환이 안된다는 문제였는데 이를 해결하는 방법에 대해 간단하게 작성한다.
culture_cost_comparison = [culture_cost_2018, culture_cost_2019, culture_cost_2020, culture_cost_2021]
colors = ['red', 'blue', 'green', 'purple']
plt.figure(figsize=(12, 6))
for i, df in enumerate(culture_cost_comparison):
plt.boxplot(df['평균'], positions=[positions[i]], vert=False, patch_artist=True, boxprops=dict(facecolor=colors[i]))
plt.xlabel('연도')
plt.xticks(positions, labels)
plt.ylabel('관광, 문화 월별 평균 지출값')
plt.title('연도별 관광, 문화 월별 평균 지출값에 대한 박스플롯')
plt.show()
이 코드에서 문제가 생겼다.
해결 방법은 코드 두줄만 적어주면 완성된다.
culture_cost_comparison = [culture_cost_2018, culture_cost_2019, culture_cost_2020, culture_cost_2021]
colors = ['red', 'blue', 'green', 'purple']
box_width = 0.4
plt.figure(figsize=(12, 6))
positions = range(1, len(culture_cost_comparison) + 1)
labels = [str(year) for year in range(2018, 2022)]
for i, df in enumerate(culture_cost_comparison):
plt.boxplot(df['평균'], positions=[positions[i]], vert=True, patch_artist=True, boxprops=dict(facecolor=colors[i]), widths=box_width)
plt.xlabel('연도')
plt.xticks(positions, labels) # 레이블 설정
plt.ylabel('관광, 문화 월별 평균 지출값')
plt.title('연도별 관광, 문화 월별 평균 지출값에 대한 박스플롯')
plt.show()
여기서 labels와 positions를 각각 정의해주면 된다.
positions 변수의 경우 박스플롯에서 각 데이터 집합(연도별 비용 데이터 프레임)이 표시될 x축 상의 위치를 설정했다.
ange(1, len(culture_cost_comparison) + 1)는 1부터 culture_cost_comparison 리스트의 길이까지 범위를 생성하며,
이 범위에 따라 데이터 집합들이 x축에 등간격으로 표시된다.
labels 변수는 x축 상에 표시될 레이블을 설정한다.
range(2018, 2022)는 2018부터 2021까지의 범위를 생성하고, for year in range(2018, 2022)를 사용하여 각 연도를 문자열로 변환하고 리스트에 저장한다.
결국 labels 리스트에는 문자열 형태의 연도 레이블이 저장된다.
+ 추가로 하나 더 바뀐 부분이 있다.
원래 코드에서는 vert=False였어서 가로형태로 박스플롯이 나왔다면, vert=True로 변경하며 세로형태로 구현했다.
box_width = 0.4, widths=box_width 를 사용해서 박스플롯의 너비를 지정해줬다.
결과가 잘 나와서 뿌듯하다!
728x90
반응형
'프로젝트' 카테고리의 다른 글
금일 프로젝트 문제 + 현재 방향성에 대한 의문 (0) | 2023.09.18 |
---|---|
분산분석을 진행하면서 발생한 이슈들 해결법 (0) | 2023.09.18 |
분산분석을 시작하고 생긴 의문점과 코드 오류 (0) | 2023.09.16 |
데이터 결측치로 인한 시각화 오류 및 한글 깨짐 해결하기 (0) | 2023.09.15 |
프로젝트 물가 데이터 통계분석 변경사항 (0) | 2023.09.14 |