빅데이터 부트캠프 16일차
plotly
- 인터랙티브 그래프 생성
- dict 형식으로 명령어 작성 (matplotlib,seaborn은 DataFrame 이용)
- JSON 데이터 형식으로 저장
- 다양한 방식으로 Export 가능
※ plotly 기본 세팅
- import plotly.io as pio (Plotly input output)
- import plotly.express as px (빠르게 그리는 방법) - px를 주로 사용
- import plotly.graph_objects as go (디테일한 설정)
- import plotly.figure_factory as ff (템플릿 불러오기)
- from plotly.subplots import make_subplots (subplot 만들기)
- from plotly.validators.scatter.marker import SymbolValidator (Symbol 꾸미기에 사용됨)
- import numpy as np
- import pandas as pd
- from urllib.request import urlopen
- import json
px()에서 ()안에서 설정할 수 있는 기본적인 것들
- x = x축 데이터, y = y축 데이터, color = 색깔 구분 기준이 될 column 지정
- label = {'x축 데이터 column명' : 'A', 'y축 데이터 column명':'B'}
-> 기본적으로 label 미설정 시에는 각 축의 데이터의 column명이 각 축의 제목으로 출력되지만 이렇게 딕셔너리로 label을 설정하면 x축 제목 = A, y축 제목 = B로 설정됨
- title = 그래프 제목, width = 너비, height = 높이
- 데이터의 범위 차이가 너무 클 경우 데이터 타입을 로그(log)로 변환하면 깔끔하게 나타남
- trendline = 추세선(보통 'ols'로 입력), trendline_color_override = 추세선 색깔
- hover_name = 그래프에 마우스 커서를 갔다댔을때 뜨는 팝업창의 제목이 될 column 지정
- hover_data = 팝업창에 추가로 출력될 데이터 설정 (미설정시 기본으로 x,y,color로 설정한 데이터만 출력)
- colorscale = 오른쪽 그림의 색깔별 값을 나타내는 막대의 색깔 패턴 설정 (showscale=True를 입력해야 저 막대가 출력 아닐 경우에는 데이터에 따라 색깔이 변화)
- color_discrete_sequence=px.colors.qualitative.패턴명 = 각 데이터별 구별 색깔 패턴 설정
패턴 종류 참고 = https://plotly.com/python/discrete-color/
Discrete
Over 13 examples of Discrete Colors including changing color, size, log axes, and more in Python.
plotly.com
https://colab.research.google.com/drive/1DPSY7mak-xcRi3s_18MsdIPGHjPzaLsN#scrollTo=kuBCicm_BOIy
go를 통한 그래프 설정 (팀프로젝트 후 추가)
- go는 그래프 요소 하나하나를 따로 설정해야함
- go.Bar(x,y,name)
- go.Scatter(x,y,name)
※ px는 line과 scatter를 분리해서 사용하지만 go는 go.Scatter 하나로 scatter와 line 모두 사용 가능
ex) go.Scatter(x,y,name,line=dict())로 line 출력 (dict()안에 color와 width같은 꾸밈요소 설정 가능)
- secondary_y = True : 오른쪽에 또 다른 y축 설정
- go.Layout() = 레이아웃 설정
width, height, title,
plot_bgcolor(그래프 배경색), paper_bgcolor(그래프 바깥 배경색)
font = 딕셔너리 형태로 폰트 설정
- go.Figure(data, layout) = figure 설정