* plotly란? : 파이썬으로 시각화를 할 수 있는 그래픽 라이브러리
* plotly 공식문서 : https://plotly.com/python-api-reference/generated/plotly.graph_objects.Figure.html
* plotly 공부 링크 : https://wikidocs.net/book/8909
- plotly 라이브러리를 불러오고(io) , .renderers를 사용하면 plotly가 어떤 렌더러를 지원하는 지 알 수 있다.
import plotly.io as pio
pio.renderers
# out :
- 이후 기본 렌더러를 pio.renderers.default = ''로 설정한다.
import plotly.io as pio
pio.renderers.default = 'jupyterlab' # '' 안에 위 available renderers 목록 중 하나 넣으면 됨
>> jupyter lab을 사용하기 위해서 위처럼 코드를 작성했다.
- plotly.graph_objects를 통해 plotly의 그래프를 생성할 수 있다.
import plotly.graph_objects as go
# 데이터 불러오기
y = [3, 10, 6]
fig = go.Figure(
data = [go.Bar(y=y)]
)
fig.show()
# out :
- plotly로 그래프를 그리는 방법은 두 가지가 있다.
(graph_objects 모듈 활용/express 모듈 활용)
1) graph_objects 모듈 활용(Low Level Interface)
- 패키지 불러오기
import plotly.graph_objects as go
>> graph_objects 패키지를 'go'로 불러온다.
# go.Figure() : 기본 그래프 생성
fig = go.Figure()
# Data 입력
fig.add_trace(go.Bar(name = "Alex", x = temp['Fruit'], y = temp[temp['Contestant'] == "Alex"]['Number Eaten'].values))
fig.add_trace(go.Bar(name = "Jordan", x = temp['Fruit'], y = temp[temp['Contestant'] == "Jordan"]['Number Eaten'].values))
# layout 입력
fig.update_layout(barmode='group')
# show() : 노트북에 그래프가 나타나게 함
fig.show()
>> data : "trace"를 파이썬 리스트 형태로 받음. trace는 그래프 타입(Bar, Scatter, Box 등)과 그 그래프에 시각화하고자 하는 데이터를 품고 있는 단위. add_trace() 사용
>> layout : 그래프의 data 외 모든 부분을 편집하는 부분. 시각화를 높이기 위한 도구들이 이에 해당(title, legend, colors, shape, axes 등). update_layout() 사용
# out :
2) express 모듈 활용(High Level Interface)
- 패키지 불러오기
import plotly.express as px
>> express 패키지를 'px'로 불러온다.
fig = px.bar(temp, x = 'Fruit', y = 'Number Eaten', color = 'Contestant', barmode='group') # barmode : 두 데이터가 나눠짐. 없으면 누적 그래프 출력
fig.show()
>> px.bar를 통하여 그래프 타입을 막대 그래프로 지정 후 x,y에 각각 데이터를 넣어주었다.
# out :
'Python' 카테고리의 다른 글
가설검정 (2표본 문제에 관한 가설검정) (1) | 2024.01.11 |
---|---|
가설검정 (t-검정/가설검정 오류/양측검정과 단측검정) (1) | 2024.01.11 |
[pandas] 데이터 둘러보기, 다뤄보기 (0) | 2024.01.09 |
[seaborn] 데이터 시각화(+matplotlib) (1) | 2024.01.08 |
[pandas] 엑셀 파일 불러오기, 내보내기 (1) | 2024.01.08 |