파이썬/시각화 matplot
제목, 축 레이블, 그리드
Merware
2023. 5. 15. 11:28
[ 학습목표 ]
그래프의 가독성을 높이기 위해 제목, 축 레이블, 그리드를 설정할 수 있다.
라이브러리 임포트 및 그래프 설정
라이브러리 임포트
import matplotlib.pyplot as plt
# 그래프에 한글폰트 설정
plt.rcParams['font.family'] = 'Malgun Gothic'
# 유니코드에서 그래프에 마이너스 기호 깨지는 문제 해결
plt.rcParams['axes.unicode_minus'] = False
# 폰트 확인하기
import matplotlib.font_manager as fm
[f.name for f in fm.fontManager.ttflist if 'Nanum' in f.name]
샘플 데이터
- 월별 몸무게 변화
어떤 사람이 체중 관리를 위해 월별 몸무게를 기록하고 있음.
월별 몸무게 변화를 시각화하고자 함 - 1월:80kg, 2월:78kg, 3월:75kg, 4월:73kg, 5월:70kg
데이터프레임 만들기
import pandas as pd
df = pd.DataFrame({'월':[1,2,3,4,5], '몸무게':[80,78,75,73,70]})
df
"""
월 몸무게
0 1 80
1 2 78
2 3 75
3 4 73
4 5 70
그래프 그리기
x = df['월']
y = df['몸무게']
plt.plot(x,y,'ro-', mec='b', mfc='b', lw=3, ms=7)
plt.show()
제목
- plt.title('제목')
- loc : 제목 위치('left','center','right')
- pad : 타이틀과 그래프와의 간격
- color : 폰트색상
- fontsize : 폰트사이즈
- fontweight : 폰트굵기('normal','bold','heavy','light','ultrabold','ultralight')
- fontfamily : 폰트
x = df['월']
y = df['몸무게']
plt.plot(x,y,'ro-', mec='b', mfc='b', lw=3, ms=7)
plt.title('월별 몸무게 변화', loc='center', pad=10, color='r', fontsize=20, fontweight='bold'
, fontfamily='NanumGothic')
plt.show()
x축, y축 레이블
- plt.xlabel('레이블')
- plt.ylabel('레이블')
- loc : 위치('left','center','right' / 'bottom', 'center','top')
- labelpad : 레이블과 그래프와의 간격
- color : 폰트색상
- fontsize : 폰트사이즈
- fontfamily : 폰트
x = df['월']
y = df['몸무게']
plt.plot(x,y,'ro-', mec='b', mfc='b', lw=3, ms=7)
plt.title('월별 몸무게 변화', loc='center', pad=10, color='r', fontsize=20, fontweight='bold'
, fontfamily='NanumGothic')
plt.xlabel('월',loc='right',labelpad=10, color='b',fontsize=12)
plt.ylabel('몸무게(kg)', loc='top',labelpad=10, color='b', fontsize=12)
plt.show()
그리드
- plt.grid(True)
- axis : 그리드 방향
- ls, lw, color, alpha 등의 속성을 지정할 수 있음
기본 그리드
- plt.grid()
x = df['월']
y = df['몸무게']
plt.plot(x,y,'ro-', mec='b', mfc='b', lw=3, ms=7)
plt.title('월별 몸무게 변화', loc='center', pad=10, color='r', fontsize=20, fontweight='bold'
, fontfamily='NanumGothic')
plt.xlabel('월',loc='right',labelpad=10, color='b',fontsize=12)
plt.ylabel('몸무게(kg)', loc='top',labelpad=10, color='b', fontsize=12)
plt.grid()
plt.show()
x축 그리드
x = df['월']
y = df['몸무게']
plt.plot(x,y,'ro-', mec='b', mfc='b', lw=3, ms=7)
plt.title('월별 몸무게 변화', loc='center', pad=10, color='r', fontsize=20, fontweight='bold'
, fontfamily='NanumGothic')
plt.xlabel('월',loc='right',labelpad=10, color='b',fontsize=12)
plt.ylabel('몸무게(kg)', loc='top',labelpad=10, color='b', fontsize=12)
plt.grid(axis='x')
plt.show()
y축 그리드
x = df['월']
y = df['몸무게']
plt.plot(x,y,'ro-', mec='b', mfc='b', lw=3, ms=7)
plt.title('월별 몸무게 변화', loc='center', pad=10, color='r', fontsize=20, fontweight='bold'
, fontfamily='NanumGothic')
plt.xlabel('월',loc='right',labelpad=10, color='b',fontsize=12)
plt.ylabel('몸무게(kg)', loc='top',labelpad=10, color='b', fontsize=12)
plt.grid(axis='y')
plt.show()
그리드 스타일링
x = df['월']
y = df['몸무게']
plt.plot(x,y,'ro-', mec='b', mfc='b', lw=3, ms=7)
plt.title('월별 몸무게 변화', loc='center', pad=10, color='r', fontsize=20, fontweight='bold'
, fontfamily='NanumGothic')
plt.xlabel('월',loc='right',labelpad=10, color='b',fontsize=12)
plt.ylabel('몸무게(kg)', loc='top',labelpad=10, color='b', fontsize=12)
plt.grid(color='skyblue', alpha=0.5, ls=':')
plt.show()