[MLOps] Python 시각화

이정연·2023년 3월 20일
0

Play Data

목록 보기
8/26

Matplotlib

  • 파이썬에서 시각화를 위해 많이 사용되는 라이브러리

  • 직관적이지 못한 개발 API로 인하여 시각화 코딩에 익숙해지는데 많은 시간이 필요

  • 차트의 축 이름이나, 차트 타이틀, 범례(legend) 등의 부가적인 속성까지 코딩이 필요

  • 기본 설정 환경에서는 현대적인 감각이 떨어짐

  • Seaborn은 matplotlib보다 쉬운 구현, 수려한 시각화, 그리고 편리한 판다스와의 연동이 특징인 시각화 라이브러리

  • Seaborn은 matplotlib을 기반으로 하고 있으며, 상대적으로 적은 양의 코딩으로 보다 화려하게 시각화 가능

  • 또한 판다스의 컬럼명을 기반으로 자동으로 축 이름을 설정하는 등 편리한 연동 기능을 가지고 있음

  • 하지만 Seaborn 역시 matplotlib을 기반으로 하고 있기 때문에 특정 요소들의 경우 matplotlib 함수들을 그대로 사용하고 있기에 Seaborn을 잘 활용하려면 반드시 matplotlib를 어느 정도 알고 있어야 함

Mac OS 한글 폰트 설정

from matplotlib import rc
rc('font', family='AppleGothic')

graphviz

Iris Data 생성

from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
import warnings
warnings.filterwarnings('ignore')

dt_clf  = DecisionTreeClassifier(random_state=42)

iris_data = load_iris()

X_train, X_test, y_train, y_test = train_test_split(iris_data.data, iris_data.target,test_size=0.2, random_state=42)

dt_clf.fit(X_train,y_train)

시각화

from sklearn.tree import export_graphviz
export_graphviz(dt_clf, out_file='tree.dot', class_names= iris_data.target_names,feature_names=iris_data.feature_names,impurity=True,filled=True)
with open("./tree.dot") as f:
    dot_graph = f.read()

import graphviz
graphviz.Source(dot_graph) 

profile
0x68656C6C6F21

0개의 댓글