본문 바로가기
Python 파이썬/matplotlib

matplotlib ) 맷플롯립 개요 & 한글 폰트 오류 해결

by 하이방가루 2022. 3. 21.
728x90
반응형

파이썬에서 가장 많이 사용되는 자료(차트,그래프 등)를 시각화하는 패키지

matplotlib의 최상위 패키지와 pyplot 모듈만으로도 거의 대부분의 시각화 처리가 가능하다.

그래프를 그리기 위한 모든 것을 담고 있는 것이 matplotlib패키지이며,

호출을 위한 간단한 API를 제공하는 것이 matplotlib.pyplot 모듈이다.

  • 이미지
  • 라인플롯
  • 스캐터 플롯
  • 컨투어 플롯
  • 3D 서피스 플롯
  • 바 차트
  • 히스토그램
  • 박스 플롯
  • ...

 

구성

 

Figure : 시각화되는 캔버스나 종이를 뜻함.

Axes : figure 안에 있는 하나의 자료? 부분? 공간?

Axis : 세로(y)와 가로(x)

ticks : 세로(y)와 가로(x) 눈금

Legend : 범례 ; 각 계열(선,막대 등)의 이름

 

# 초기화 ; 패키지 가져오기
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as image

# 데이터준비
x = np.arange(0, 6, 0.1) 
y1 = np.sin(x)
y2 = np.cos(x)

# 그래프 그리기
plt.plot(x, y1, label="sin") # sin그래프 정보 추가
plt.plot(x, y2, linestyle="--", label="cos") # cos그래프 정보 추가
plt.xlabel("x") # x축
plt.ylabel("y") # y축
plt.title("sin & cos") # 캔버스제목
plt.legend() # 범례
plt.show() # 그림 띄우기

# 이미지 표시하기
img = image.imread("파일경로") # 이미지 정보 가져오기
plt.imshow(img) # 이미지 정보 추가
plt.axis('off') # 축 표시 안하기
plt.show() # 그림 띄우기

 

속성 설정

 

Artist는 matplotlib에서 데이터 및 시각화를 위한 객체들을 지칭하는 이름이다.

따라서 그래프에 대한 값을 바꾸고 싶다면, Artist Layer의 객체에 포한된 변수를 변경하면 된다.

지역적(Local) 설정 - 변경하려는 그래프에 대한 Figure, Axes 객체를 설정

  ex) plt.figure(figsize=(10,6))

    ax = plt.gca() # Axes
    ax.tick_params(axis='x', colors='blue') # x축 눈금 색 blue로 
    ax.tick_params(axis='y', colors='red')

 

그리고 matplotlib은 그래프를 그리기 위해서 Runtime Configuration Parameters, 줄여서 rcParams라는 딕셔너리의 값을 이용해서 Backend에서 작업하여 그린다.

따라서 그래프 외의 다양한 속성 정보 또는 그리는 방법에 대해서 바꾸기 싶다면 rcParams 딕셔너리의 값을 변경하면 된다.

  전역적(Global) 설정 - rcParams 딕셔너리의 값을 변경

    ex) matplotlib.rcParams['axes.edgecolor'] = "C2"

      matplotlib.rc('font', family='Malgun Gothic')

 

rcParmas에 값들은 matplotlib을 import하고 matplotlib.rcParams 를 출력하면 key와 현재의 value를 볼 수 있다.

 

한글 폰트 오류 해결

윈도우os

import matplotlib as mpl
mpl.rc('font', family='Malgun Gothic')

맥os

import matplotlib as mpl
mpl.rc('font', family='AppleGothic')
728x90
반응형

댓글