편의상 저장되어 있는 score 엑셀 파일을 사용한다.
다중 막대그래프를 배우기에 앞서 numpy 모듈 중 arrange 함수를 간단하게 알아보고 시작하자.
먼저 numpy 모듈을 import 하고 np에 이 모듈을 저장한다.
np.arrange(n)은 0부터 n-1까지 숫자들로 리스트를 만들어준다.
추가로 shape에 대해도 알아보자.
shape는 해당 데이터의 row와 column의 정보를 나타내 준다.
1. 다중 막대그래프
다음은 shape를 통해서 row 개수를 N 변수에 저장한다.
그리고 index 변수에 0부터 N-1(row-1)까지의 숫자를 리스트 형태로 만들어준다.
w = 0.25로 저장하고
plt.bar을 활용하여 (x, y)에 대응하는 숫자와 데이터들을 그래프에 넣어준다.
즉, index - w에는 국어 데이터가, index에는 영어 데이터가, index+w에는 수학 데이터가 들어가게 된다.
그런데 위의 그래프는 그래프가 겹치는 현상이 발생한다.
이를 해결하기 위해 width를 사용하면 된다.
각 그래프에 width = w로 설정하여 각 그래프마다 데이터가 w만큼 떨어져 있던 것을 그래프 굵기를 w로 하여 정리해준 것을 볼 수 있다.
2. 다중 막대그래프 추가 설정
우리가 얻었던 그래프에서 각각 label을 붙여주고 legend(ncol=3) 함수를 사용해 범례를 3개의 column으로 나타내 주었다.
그리고 x축에는 지원번호의 데이터가 저장돼 있었는데 이를 이름 데이터로 바꿔주기 위해
plt.xticks(index(바꿔주고 싶은 부분), df['이름'](무엇으로 바꿀지), rotation=60)를 사용해 주었다.
다음은 figure를 활용하여 그래프 사이즈를 변경해 주었고
title를 활용해 그래프에 제목을 붙여주었다.
'Jupyter Computer > Matplotlib' 카테고리의 다른 글
[Python] 14. Matplotlib - 원 그래프 (심화) (0) | 2022.03.14 |
---|---|
[Python] 13. Matplotlib - 원 그래프 (기본) (0) | 2022.03.14 |
[Python] 11. Matplotlib - 누적막대그래프 (0) | 2022.03.14 |
[Python] 10. Matplotlib - DataFrame 활용 (0) | 2022.03.14 |
[Python] 9.막대그래프 심화 (0) | 2022.03.11 |