Plotly 그래프 - Plotly Express

Page content

개요

  • High-Level API 형태인 Plotly Express에 대해 학습하도록 한다.
  • Plotly Express는 간단하게 말하면 Pandas Dataframe과 직접적으로 연동이 가능하다.
  • 보다 직관적으로 그래프를 시각화할 수 있기 때문에 초기 밑그림을 그릴 때는 Plotly Express로 작성하는 것이 좋다.
  • 전체 설명 참고자료 : Plotly Express in Python

Plotly Express 요약

Plotly Express 그래프 종류

Plotly Express currently includes the following functions:

Plotly Express 그래프 주요 특징

A single entry point into plotly: just import plotly.express as px and get access to all the plotting functions, plus built-in demo datasets under px.data and built-in color scales and sequences under px.color. Every PX function returns a plotly.graph_objects.Figure object, so you can edit it using all the same methods likeupdate_layout and add_trace.

그래프 작성법

  • 그래프 작성법은 매우 간단하며, Seaborn과 유사하다고 보면 된다.
  • iris 데이터를 불러와서 산점도를 작성하도록 한다.
import plotly.express as px 

iris = px.data.iris() # 데이터를 불러온다. 
iris.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 150 entries, 0 to 149
Data columns (total 6 columns):
 #   Column        Non-Null Count  Dtype  
---  ------        --------------  -----  
 0   sepal_length  150 non-null    float64
 1   sepal_width   150 non-null    float64
 2   petal_length  150 non-null    float64
 3   petal_width   150 non-null    float64
 4   species       150 non-null    object 
 5   species_id    150 non-null    int64  
dtypes: float64(4), int64(1), object(1)
memory usage: 7.2+ KB
  • 그래프를 작성할 때, seaborn 처럼, 컬럼명만 알고 있으면 그래프가 자동으로 그려진다.
fig = px.scatter(iris, x="sepal_width", y="sepal_length")
fig.show()

newplot_01.png

그래프 수정

  • 그렇다면, Figure Object 처럼, 테마 변경 등이 가능한지 확인하도록 한다.
  • 이와 같이 자유자재로 컨트롤 할 수 있음을 알 수 있다.
fig.add_bar(x=[1, 2, 3], y = [3, 2, 1])
fig.layout.title = '그래프 제목'
fig.layout.xaxis.title = 'X축 제목'
fig.layout.yaxis.title = 'y축 제목'
fig.layout.template.layout.plot_bgcolor = '#FFCC00'
fig.layout.xaxis.gridcolor = '#0F3DB8'
fig.layout.xaxis.linecolor = 'black'
fig.layout.yaxis.linecolor = 'red'
fig.layout.yaxis.linewidth = 5
fig.show()

newplot_02.png