pandas

plotly의 이해

gggg21 2024. 11. 28. 09:24

Plotly는 다양한 요구에 맞게 그래프를 생성할 수 있도록 모듈별로 나뉘어 있습니다. 이 각각의 모듈은 특정한 용도에 최적화되어 있으며, 단계별로 복잡한 그래프를 생성하거나 인터랙티브하게 만들 수 있습니다.

Plotly의 주요 모듈 및 역할


1. plotly.express

특징:

  • 간단하고 빠르게 그래프를 생성하기 위한 고수준 API.
  • 데이터프레임 기반으로 설계되어 pandas와 잘 연동됨.
  • 적은 코드로 다양한 시각화를 빠르게 생성
import plotly.express as px

# 데이터 예제
import pandas as pd
df = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})

# 라인 차트
fig = px.line(df, x='x', y='y', title="Simple Line Chart")
fig.show()

 

언제 사용?

  • 데이터 분석 초기 단계에서 빠르게 시각화할 때.
  • pandas 데이터프레임 기반 작업이 중심일 때.

2. plotly.graph_objects

특징:

  • 저수준 API로, 그래프의 세부 요소를 커스터마이징 가능.
  • 그래프를 완전히 제어할 수 있음.
  • 레이아웃, 트레이스(Trace), 데이터 등 모든 것을 직접 설정.
import plotly.graph_objects as go

# 바 차트 생성
fig = go.Figure(
    data=[go.Bar(x=["A", "B", "C"], y=[10, 20, 15])],
    layout=go.Layout(title="Custom Bar Chart")
)
fig.show()

언제 사용?

  • 그래프를 세부적으로 설계해야 할 때.
  • plotly.express가 제공하지 않는 고급 기능을 구현해야 할 때.

 


 

3. plotly.offline

특징:

  • 오프라인 환경에서 Plotly 그래프를 생성하고 저장 가능.
  • HTML로 그래프를 저장하거나 웹 브라우저에서 그래프를 열 수 있음.
from plotly.offline import plot
import plotly.graph_objects as go

# 그래프 생성 및 HTML 저장
fig = go.Figure(data=[go.Scatter(x=[1, 2, 3], y=[4, 5, 6])])
plot(fig, filename="scatter.html")

 

언제 사용?

  • 인터넷 연결 없이 로컬에서 작업할 때.
  • 그래프를 HTML 파일로 내보내야 할 때.

 

차이점 요약

모듈 목적 및 특징 주요 사용 사례
plotly.express 간단하고 빠르게 그래프 생성, pandas와
호환
데이터 분석 초기 시각화
plotly.graphh_objects 세부적으로 그래프를 커스터마이징, 저 수준 API 고급 그래프 제작, 완벽한 제어가 필요할때
plotly.offline 오라인 작업 지우너 및 HTML저장 네트워크 없는 환경 또는 웹 기반 시각화 필요 시