Plotly 라이브러리를 사용해서 주피터 노트북에 선 그래프를 그리는 방법을 소개하겠습니다. Plotly 선 그래프를 세 가지 형태로 살펴보겠습니다. ①산점도 스타일 ② 선 그래프 ③ 선 그래프 + 마커
선 그래프는 산점도와 달리 x 값당 하나의 데이터 포인트만 있습니다.
사용할 데이터는 random 모듈을 이용해서 임의의 숫자로 만들었습니다.
import numpy as np
import pandas as pd
# plotly 라이브러리 불러오기
import plotly.offline as pyo
import plotly.graph_objs as go
# 임의의 숫자 데이터 생성
np.random.seed(2)
x_values = np.linspace(0, 1, 100)
y_values = np.random.randint(0, 100, 100)
선 그래프 그리기
앞서 만든 숫자 데이터를 사용해서 세 가지 형태의 선 그래프를 그리겠습니다. 각각의 그래프를 구별하기 위해 이름을 지어줬습니다 (markers, lines, lines+markers). 그래프 우측의 범례(legend)를 보시면 해당 이름을 확인할 수 있습니다.
trace1 = go.Scatter(x = x_values, y = y_values + 100, mode = 'markers', name = 'markers')
trace2 = go.Scatter(x = x_values, y = y_values, mode = 'lines', name = 'lines')
trace3 = go.Scatter(x = x_values, y = y_values - 100, mode = 'lines+markers', name = 'lines+markers')
data = [trace1, trace2, trace3]
pyo.iplot(data)
그래프 제목 추가하기
Plotly에서 그래프에 제목(title)을 달기 위해서는 다음과 같은 코드가 필요합니다. 위에서 만든 그래프에 제목을 추가하겠습니다.
trace1 = go.Scatter(x = x_values, y = y_values + 100, mode = 'markers', name = 'markers')
trace2 = go.Scatter(x = x_values, y = y_values, mode = 'lines', name = 'lines')
trace3 = go.Scatter(x = x_values, y = y_values - 100, mode = 'lines+markers', name = 'lines+markers')
data = [trace1, trace2, trace3]
layout = go.Layout(title='세 가지 형태의 선 그래프', titlefont=dict(size=25, color='#ED4C67'))
fig = go.Figure(data=data, layout=layout)
pyo.iplot(fig)
- 이 글은 아나콘다(Anaconda3)가 설치된 주피터 노트북에서 작성되었습니다.