16. pandas를 이용해 차트그리기
2018. 7. 11. 14:47
프로젝트명 : studying_pandas
차트 그리는 py : pandas_excel.py
- pandas의 df(DataFrame)으로 차트를 그리려면, matplotlib이라는 모듈이 필요하다. 이전과 같은 방법으로 설치하자.
- 설치가 되었으면,
- import matplotlib을 통해서 모듈을 가져온다. -> 사실상 지금은 필요없다...
- import matplotlib.pyplot as plt 를 통해 내부 파이플롯이라는 클래스를 plt로 가져온다.
-> df의특정열.plot()을 통해 차트를 그린다. -> plt.show 로 화면에 띄운다. - 특정열(만두생산)을 .plot()을 통해 kind는 bar 차트로 그리고
plt.show() 로 화면에 띄워보우는데, block을 띄울껀지인자를 True로 주자..
-df['만두생산'].plot(kind='bar')
- plt.show(block=True)
*우측에 있떤 SciView를 설정 > FloatingMode를 통해 창으로 확인할 수 있다.
- 여기서 x축이 이름이 아니라, index로 뜬다. - plot()을 차트로 그리기전에, 항상 띄울 DataFrame을 미리 print로 찍어보자.
- x축으로 나올 index가 숫자로 찍혀있다. - index를 0,1,2,3,4가 아니라, '이름'열로 하고 싶다.
df.set_index('칼럼명')으로 특정칼럼을 -> index로 옮겨보자( df자체를 먼저 바꾸는 작업이다) - 다시 .plot()으로 출력시켜보자.
이제 문제는 index여서 x축으로 출력되는 한글이 깨지는 문제이다
1. 인코딩 문제
2. 폰트가 영어만 써지는 폰트 - matplotlib에서 제공하는 font_manager를 통해 폰트를 설정해보자.
1. 컴퓨터에 설치된 폰트의 이름을 가져오게 한다. -> 2. matplotlib함수에 적용한다.
from matplotlib import font_manger를 통해 font_manager를 사용할 수 있게 한다.
폰트매니져의, 폰트프로퍼티스의 인자로 폰트네임fname=에 실제 한글 폰트의 경로를 지정해주고 .get_name()을 붙혀 해당 폰트의 name을 가져와 font_name이라는 변수로 받는다.
그리고 나서 matplotlib.rc('font', family= font_name)함수를 이용해서(드디어 쓰이네..) 차트의 폰트를 지정해준다.
#matplotlib의 폰트를 지정해주는 방법
font_name = font_manager.FontProperties(fname='C:/Windows/Fonts/malgun.ttf').get_name()
matplotlib.rc('font', family=font_name)
차트를 저장하는 함수도 존재한다. plt.savefig('파일명*.png')을 통해 png파일로 저장해보자.
반드시 plt.show(block=True)로 화면에 띄우기전에 저장해야한다. 순서가 바뀌면(show->savefig) 빈파일이 저장된다.
'빅데이터 관련 프로그래밍 > Python3 기초 및 업무자동화' 카테고리의 다른 글
18. BeuatifulSoup4 설치 및 예제 홈페이지 스크래핑 해보기 (0) | 2018.12.30 |
---|---|
17. 웹스크래핑 시작하기 - HTML 이해 / CSS from bootstrap (0) | 2018.12.30 |
15. pandas로 excel파일 읽고 / 쓰기 (0) | 2018.07.09 |
14. 파이참에서 pandas 설치 및 기본 사용해보기 (0) | 2018.07.09 |
업무 자동화 최종정리 : CSV모듈로 CSV읽고 -> 클래스모듈화를 통한 인스턴스생성 및 계산 칼럼추가 -> CSV 쓰기 + MS WORD 문서화까지(.docx) (0) | 2018.07.07 |