/ LECTURE

Python - Plot1

이 페이지는 다음에 대한 공부 기록입니다

JAVA(자바), Python(파이썬) 기반의

AI 활용 응용 소프트웨어 개발자 양성 과정

2021.11.10. ~ 2022.05.18.

찾으시는 정보가 있으시다면
주제별reference를 이용하시거나
우측 상단에 있는 검색기능을 이용해주세요

85일차 수업

plot

import pandas as pd

# scv 파일에서 데이터를 불러오고, 각 컬럼이름 지정해주기
df = pd.read_scv(pima-indians-diabetes.csv, name=[ 'pregnant','plasma','pressure','thickness','insulin','BMI','pedigree','age','diabetes'])

# 필요한 컬럼만 가져오기
temp = df[ ['pregnant','diabetes']]

# 특정 컬럼 값들을 기준으로 그룹화시켜 df 만들기
temp1 = temp.groupby([pregnant]).mean()

# jupyter notebook은  print를 사용하지 않아도 출력 지원
temp1

import matplotlib.pyplot as plt

# 데이터 시각화
temp1.plot()
# plot의 arg 중 kind에 ‘barh’, ‘bar’ 등을 주어 모양을 지정할 수 있음

그룹 메소드

| Method | Description | |:———:|:———————————–| | groupby() | 집계 메소드 | | arr() | 여러개의 컬럼에 각각의 집계함수를 쓸 수 있도록 도와주는 함수 | | count() | 누락 값을 제외한 데이터 수를 반환 | | size() | 누락 값이 포함된 데이터 수를 반환 | | nth(n) | n번째 행을 반환 | | sem() | 평균에 대한 표준 편차 반환 |

그외 sum, mean, std, var, min, max .. (합계, 평균, 표준 편차 등)

seaborn

import seaborn
import matplotlib.pyplot as plt

# 기본 제공 데이터셋
ans = seaborn.load_dataset(anscombe)

ds1 = ans[ans[dataset]== I]
ds2 = ans[ans[dataset]== II]
ds3 = ans[ans[dataset]== III]
ds4 = ans[ans[dataset]== IV]

x , y = ds1.var(numeric=True)
print(fx={x}, y ={y})	# output “x=11.0, y=4.12726…”
# 의미를 도출해내기 힘든 구조, 우리가 시각화를 해야하는 이유

pyplot

데이터 분석 > 인사이트 도출 > 결과를 알기 쉽게 시각화

모르는 사람이 봐도 어떤 내용인지 쉽게 이해할 수 있도록 도와주는 수단으로써 시각화

import matplotlib.pyplot as plt

plt.plot(ds1[x], ds1[y])		# 선으로 나타내줌
plt.plot(ds2[x], ds2[y], o)		# 점으로 나타내줌

# 전체 그래프에 대한 기본 틀
fig = plt.figure()
axes1 = fig.add_subplot(2,2,1)	# x,y 행렬을 만들고 몇번째인지
axes2 = fig.add_subplot(2,2,2)	# 2 * 2 행렬의 2번째 plot
axes3 = fig.add_subplot(2,2,3)
axes4 = fig.add_subplot(2,2,4)

axes1.plot(ds1[x], ds1[y], o)
axes2.plot(ds2[x], ds2[y], o)

한글 설정

from matplotlib import font_manager
import matplotlib.pylot as plt

# 추가 설정, 폰트를 변경할 때 – 기호가 ㅁ으로 바뀌는 현상 방지
plt.rcParams[axes.unicode_minus]=False
# 그래프에 표시할 폰트 설정
plt.rc(font, family= AppleGothic)

# 폰트 목록 확인 방법, 경로와 함께 이름 리스트
font_list = font_manager.findSystemFonts(fontpath=None, fontext= ttf)

data = [1,2,3,4,5]
# 크기 조절
plt.figure(figsize=(20,10))
plt.plot(data)
plt.show()

step = [하나, , , , 다섯]
plt.plot(step, data)	# x축, y축 설정
# arg 목록linestyle, color, marker 해당 인자별로 특성 값 지정 가능하고
# ‘bo--’ 처럼 축약식으로도 가능
# 그외 markerfacecolor, lw 등이 있음
plt.title(Sample)	# 그래프 타이틀 작성
plt.xlabel(time)	# x축 설명 작성
plt.ylabel(temp)	# y축 설명 작성

plt.grid()		# 그리드 표시