본문 바로가기

파이썬 100일 챌린지

[100일 챌린지] 파이썬 막대그래프 나란히 그리기 (feat, plt) #033

 

막대그래프에서 2가지 정보를 활용하면 보면 아래처럼 그래프가 겹친다. 

 

샘플 엑셀은 이전 글을 참고해주세요~

 

 

그래프를 나란히 그려보고 싶다. 

그런데 쉽게 설정으로 되진 않고, 약간의 수작업이 필요하다. 

 

 

개념은 이렇다. 

1. '0 총지수' 그래프를 그려준다. 

2. '06 보건' 그래프를 '0 총지수' 그래프 바로 옆에 그려준다. 

 

이게 개념은 쉬운데, 바로 옆에 어떻게 그려주는 냐가 궁금하단 말이다... 

 

 

 

<막대그래프 나란히 그리기 순서>

 

1. x축 위치 초기화

x에 데이터의 칼럼의 수만큼 눈금을 생성한다. (np.array는 아래 링크에서 ㅋ)

[100일 챌린지] 파이썬 numpy array (ndarray) 생성과 함수 모음 #023

w는 막대그래프의 너비도 설정한다. (이게 필요한 이유는 나중에...)

 

 

2. '0 총지수' 그래프 그리기

x축 위치마다 '0 총지수' 데이터가 y축 정보로 들어갈 것이다. 

x축은 0, 1, 2, 3, 4, 5 에 그래프가 그려질 것이다. 

 

 

3. 그래프 x위치 이동

'0 총지수' 그래프 옆에 그래프를 그려줘야 하니 그래프 너비만큼 더한다. 

그래서 w가 0.5보다 크면 그래프가 겹쳐보이게 된다. 

 

 

4. '06 보건' 그래프 그리기

x축 위치마다 '06 보건' 데이터가 y축 정보로 들어갈 것이다.

x축은 0.3, 1.3, 2.3, 3.3, 4.3, 5.3 에 그래프가 그려질 것이다. 

 

 

5. x축 표시 및 기타 설정

x축은 0, 1, 2, 3, 4, 5 에 x축 눈금과 레이블을 설정해준다. 

범례도 지정한다. 

 

 

아래 소스코드를 따라가다 보면 이해하기 쉬울 것이다~

 

추가된 부분만 노란색으로 체크함

 

figure, subplot을 활용한 버전도 같이 올린다. 

 

결과의 큰 차이는 없다.

 

 

 

 

728x90