Matplotlib 파이썬을 활용한 금융 데이터 분석 기초 및 심화 과정 1 1.

Slides:



Advertisements
Similar presentations
파이썬 (Python). 1 일 : 파이썬 프로그래밍 기초 2 일 : 객체, 문자열 3 일 : 문자인코딩, 정규표현식, 옛한글 4 일 : 파일 입출력 5 일 : 함수와 모듈 6 일 : 원시 말뭉치 다루기 실습 7 일 : 주석 말뭉치 다루기 실습 8 일 : 웹 데이터로.
Advertisements

기계시스템디자인공학과 기계제도 SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
R 을 활용하여 실전 분석하기  Review- 비정형데이터 분석 / 그래프 그리기  비정형 데이터로 그래프 그리기 예제 ) 제주도 여행 코스  정형 데이터로 그래프 그리기 예제 1) 라면가격 상승률과 물가상승률 비교 예제 2) 2 호선 역별 승하차인원수 1.
 The technical and design related tasks such as technical, maintenance, creation of the Knowledge Base How could a person in charge of purchasing is.
프로젝트 학습 중간 보고서 군포초등학교부설 지역공동 영재학급 용호초등학교5학년 이창민.
컴퓨터와 인터넷.
오늘의 관심주 오늘의 관심종목 외인/기관 순매수 특징주 코스피 상해종합 다우존스 S&P500 16/03/29 (화) 외국인 코스피(억) 외국계 : 업종전체 순매수속에 화학업종으로 누적순매수는증가세 기록 기관계 : 화학,기계,건자재등 일부 종목별 순매수마감.
승진제도 승진의 개념 및 중요성 직급체계 승진제도 개선안.
Selenium & Beautiful Soup
Openpyxl 파이썬을 활용한 금융 데이터 분석 기초 및 심화 과정 1 1.
업무자동화기초 파이썬을 활용한 금융 데이터 분석 기초 및 심화 과정 1 1.
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++로 프로그래밍한다는 것의 의미 세상에서 가장 간단한 C++ 프로그램
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++ 프로그래밍 기초 : 객체지향의 시작 C++로 프로그래밍한다는 것의 의미
전자책 자동반납 및 예약도서 자동대출 알림 설정 방법 안내
데이터 파일 C 데이터 파일과 스트림(Stream) 텍스트 파일 처리
Python Network Data Science Lab Seunghun Lee, KangHee Lee
독도 바로알기 2. 사료와 지도로 보는 독도.
양방향 파이프의 활용 양방향 통신 파이프는 기본적으로 단방향이므로 양방향 통신을 위해서는 파이프를 2개 생성한다.
Graph 개론 통계분석을 위한 Excel Chart 기초.
오늘의 관심주 오늘의 관심종목 외인/기관 순매수 특징주 코스피 상해종합 다우존스 S&P500 16/03/16(수) 외국인 기관
오늘의 관심주 오늘의 관심종목 외인/기관 순매수 특징주 코스피 상해종합 다우존스 S&P500 16/03/28(월) 외국인 기관
07장. <TABLE> 태그로 표 디자인하기
Ch1 MATLAB Environment 제1장 매트랩 환경.
23장. 구조체와 사용자 정의 자료형 2.
H2TV ASTB 관리 기능 메뉴얼 제이웨이 영상사업실 기술개발팀.
DK-128 FND 실습 아이티즌 기술연구소 김태성 연구원
컴퓨터 프로그래밍 : 실습3 2장 데이터와 식.
공학컴퓨터프로그래밍 Python 염익준 교수.
1학기 물리실험 I 리뷰 Prof. Seewhy Lee.
10장 컴퓨터 기반 데이터 획득 응용 프로그램 LabVIEW 사용법
1.고객맞이 상황 응대자세 화법 중점사항 매장 밖 에 서 도보 고객 고객 방향 쪽으로 바른 자세를 취한다
Opencv 이민권.
제4장 제어 시스템의 성능.
수입차 구입 시 영업사원 인지경로 및 영업소 방문 이유
어서와 C언어는 처음이지 제14장.
KNOW WHERE 시각적 보조자료 3 폰트 아이콘 템플릿.
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
유승석 FILE I/O File Input/Output 유승석 SD50 – C# & .NET Platform.
HTML5 Canvas 태그 92팸 유승연 안동찬 엄태인 김영재.
Lab 1 Guide: 교재 2장 DrawX ( 쪽)
Python 및 Jupyter 설치 방법 홍지훈 숭실대학교.
USN(Ubiquitous Sensor Network)
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
Microsoft Word 2002 제4장 그리기와 그림 삽입하기.
Eclipse CDT에서 프로젝트를 Export 하고 Import 하는 방법
[ 강남구 청담동 “이동수에프엔지” ].
CAS (Computer Algebra System) 소개
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
P 직선상에서 속력이 일정한 운동.
12강. 컨트롤러 컨트롤러 클래스 제작 요청 처리 메소드 제작 뷰에 데이터 전달
ITQ 정보기술자격 국가공인 Excel 2007 Ⅱ 함수- 15회차 강사 : 박영민.
자료관리 : 현 화면에서 인쇄할 자료를 입력하여 발행하는 화면 입니다.
Handle Graphics System & GUI
수학8가 대한 108~110 쪽 Ⅴ. 부등식 2. 일차부등식 §1.일차부등식의 풀이(5/10) 일차부등식의 풀이.
폐업·도산 사유로 고용보험을 상실한 근로자 자료 : 한국고용정보원 제조업 23.8 % 기 타 36.8 % %
Homework #5 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
인천경제자유구역 영종지구 영종하늘도시 개발사업
Homework #3 (1/3) 다음을 수행한 후, 결과 파일들을 출력하여 제출한다.
ITQ 정보기술자격 국가공인 Excel 2007 Ⅱ 함수- 12회차 강사 : 박영민.
구조체(struct)와 공용체(union)
9 브라우저 객체 모델.
Network Lab. Young-Chul Hwang
“Poster Main Title” Author and co-author names
워드프로세서 실기 10일차 강 사 : 박영민.
오늘의 관심주 오늘의 관심종목 외인/기관 순매수 특징주 코스피 상해종합 다우존스 S&P500 16/04/01 (목) 외국인
6 객체.
Spring, 2019 School of CSE Pusan National University
[ 딥러닝 기초 입문 ] 2. 통계적이 아니라 시행착오적 회귀분석 by Tensorflow - Tensorflow를 사용하는 이유, 신경망 구조 -
20 XMLHttpRequest.
POS 헬프데스크 MSDE 버전 간단 DB 이관 방법.
Presentation transcript:

Matplotlib 파이썬을 활용한 금융 데이터 분석 기초 및 심화 과정 1 1

Matplotlib Matplotlib is a Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms https://matplotlib.org/index.html https://matplotlib.org/gallery.html# pyplot It provides a MATLAB-like plotting framework

간단한 그래프 그리기 04_Visualization/01.py import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4]) plt.show()

x 축과 y 축 04_Visualization/02.py import matplotlib.pyplot as plt x = range(0, 100) y = [v*v for v in x] plt.plot(x, y) plt.show()

Figure and subplots 04_Visualization/03.py import matplotlib.pyplot as plt fig = plt.figure() ax1 = fig.add_subplot(2, 1, 1) ax2 = fig.add_subplot(2, 1, 2) x = range(0, 100) y = [v*v for v in x] ax1.plot(x, y) ax2.bar(x, y) plt.show()

Figure and subplots 04_Visualization/04.py import matplotlib.pyplot as plt import numpy as np fig = plt.figure() ax1 = fig.add_subplot(2, 1, 1) # 2x1 중 첫 번째 ax2 = fig.add_subplot(2, 1, 2) # 2x1 중 두 번째 x = np.arange(0.0, 2*np.pi, 0.1) sin_y = np.sin(x) cos_y = np.cos(x) ax1.plot(x, sin_y) ax2.plot(x, cos_y) plt.show()

라벨 04_Visualization/05.py ax1.set_xlabel('x') ax1.set_ylabel('sin(x)') ax2.set_ylabel('cos(x)')

범례

범례 04_Visualization/06.py import pandas_datareader.data as web import matplotlib.pyplot as plt lg = web.DataReader("KRX:066570", "google") samsung = web.DataReader("KRX:005930", "google") plt.plot(lg.index, lg['Close'], label='LG Electronics') plt.plot(samsung.index, samsung['Close'], label='Samsung Electronics') plt.legend(loc="best") plt.show()

Figure 크기 04_Visualization/07.py import pandas_datareader.data as web import matplotlib.pyplot as plt lg = web.DataReader("KRX:066570", "google") samsung = web.DataReader("KRX:005930", "google") fig = plt.figure(figsize=(12, 4)) plt.plot(lg.index, lg['Close'], label='LG Electronics') plt.plot(samsung.index, samsung['Close'], label='Samsung Electronics') plt.legend(loc="best") plt.show()

matplotlib 구성 matplotlib 그래프 그리기 Figure 객체와 하나 이상의 subplot(Axes) 객체가 필요함 Axes 객체는 다시 두 개의 Axis 객체를 포함 plt.plot()은 최근에 만들어진 Figure 객체의 subplot에 그래프를 그림 만약 subplot이 없다면 새로 생성

matplotlib 구성 import matplotlib.pyplot as plt fig = plt.figure() plt.show() import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot(1, 1, 1) plt.show()

matplotlib 구성 subplots() 04_Visualization/08.py Figure 객체를 생성(figure)하고 여러 개의 AxesSubplot 객체를 생성 (add_subplot)하는 두 가지 작업을 한 번에 처리 import matplotlib.pyplot as plt fig, ax_list = plt.subplots(2, 2) ax_list[0][0].plot([1, 2, 3, 4]) plt.show()

gca() ax = plt.gca() fig = plt.figure(figsize=(12, 4)) plt.plot(lg.index, lg['Close'], label='LG Electronics') plt.plot(samsung.index, samsung['Close'], label='Samsung Electronics') plt.legend(loc="best") ax = plt.gca() ax.grid(True) plt.show()

수정 종가와 거래량 한번에 그리기

subplot2grid import matplotlib.pyplot as plt fig = plt.figure(figsize=(12, 8)) top_axes = plt.subplot2grid((4,4), (0,0), rowspan=3, colspan=4) bottom_axes = plt.subplot2grid((4,4), (3,0), rowspan=1, colspan=4) plt.show()

수정 종가와 거래량 한번에 그리기 04_Visualization/09.py import matplotlib.pyplot as plt import pandas_datareader.data as web sk_hynix = web.DataReader("KRX:000660", "google") fig = plt.figure(figsize=(12, 8)) top_axes = plt.subplot2grid((4,4), (0,0), rowspan=3, colspan=4) bottom_axes = plt.subplot2grid((4,4), (3,0), rowspan=1, colspan=4) bottom_axes.get_yaxis().get_major_formatter().set_scientific(False) top_axes.plot(sk_hynix.index, sk_hynix['Close'], label='Close') bottom_axes.plot(sk_hynix.index, sk_hynix['Volume']) plt.tight_layout() plt.show()

bar 차트

bar 차트 한글 설정 import matplotlib.pyplot as plt import numpy as np from matplotlib import font_manager, rc font_name = font_manager.FontProperties(fname="c:/Windows/Fonts/malgun.ttf").get_name() rc('font', family=font_name)

bar 차트 데이터 준비 figure and axes fig = plt.figure(figsize=(12, 8)) industry = ['통신업', '의료정밀', '운수창고업', '의약품', '음식료품', '전기가스업', '서비스업', '전기전자', '종이목재', '증권'] fluctuations = [1.83, 1.30, 1.30, 1.26, 1.06, 0.93, 0.77, 0.68, 0.65, 0.61] fig = plt.figure(figsize=(12, 8)) ax = fig.add_subplot(111)

bar 차트 bar 차트 그리기 그래프 그리기 ypos = np.arange(10) rects = plt.barh(ypos, fluctuations, align='center', height=0.5) plt.yticks(ypos, industry) plt.xlabel('등락률') plt.show()

bar 차트 텍스트 출력 for i, rect in enumerate(rects): ax.text(0.95 * rect.get_width(), rect.get_y() + rect.get_height() / 2.0, str(fluctuations[i]) + '%', ha='right', va='center')

bar 차트 04_Visualization/10.py import matplotlib.pyplot as plt import numpy as np from matplotlib import font_manager, rc font_name = font_manager.FontProperties(fname="c:/Windows/Fonts/malgun.ttf").get_name() rc('font', family=font_name) industry = ['통신업', '의료정밀', '운수창고업', '의약품', '음식료품', '전기가스업', '서비스업', '전기전자', '종이목재', '증권'] fluctuations = [1.83, 1.30, 1.30, 1.26, 1.06, 0.93, 0.77, 0.68, 0.65, 0.61] fig = plt.figure(figsize=(12, 8)) ax = fig.add_subplot(111) ypos = np.arange(10) rects = plt.barh(ypos, fluctuations, align='center', height=0.5) plt.yticks(ypos, industry) for i, rect in enumerate(rects): ax.text(0.95 * rect.get_width(), rect.get_y() + rect.get_height() / 2.0, str(fluctuations[i]) + '%', ha='right', va='center') plt.xlabel('등락률') plt.show()

음수 처리 한글 폰트 사용시 축에 음수가 나오는 경우 한글 깨지는 경우가 발생함 import matplotlib matplotlib.rcParams['axes.unicode_minus']=False

pie 차트

pie 차트 import matplotlib.pyplot as plt from matplotlib import font_manager, rc # 한글 폰트 font_name = font_manager.FontProperties(fname="c:/Windows/Fonts/malgun.ttf").get_name() rc('font', family=font_name) colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue', 'red'] labels = ['삼성전자', 'SK하이닉스', 'LG전자', '네이버', '카카오'] ratio = [50, 20, 10, 10, 10] explode = (0.0, 0.1, 0.0, 0.0, 0.0) plt.pie(ratio, explode=explode, labels=labels, colors=colors, autopct='%1.1f%%', shadow=True, startangle=90) plt.show()