[시각화] plotly line

2024. 2. 3. 20:13시각화

오늘은 plotly로 선 그래프에 그리는 것에 대해서 알아보겠습니다. 선 그래프는 비교적 단순한 그래프여서 어떻게 꾸며야할 지 잘 모르겠습니다,,

 

우선 필요한 라이브러리들을 호출합니다.

import pandas as pd
import numpy as np
import plotly.graph_objects as go
import plotly.express as px

 

그리고 이번에도 역시 비어있는 그래프를 만들고 add_trace를 통해 선 그래프를 그려넣겠습니다. 선 그래프는 go.Scatter(mode='lines')로 그릴 수 있습니다.

x=np.arange(1,100)
y=np.sin(x)
fig=go.Figure()
fig.add_trace(
    go.Scatter(x=x,y=y,mode='lines'))
fig.show()

그래프는 y=sin(x)를 그렸습니다. 여기서 mode에 대해서는 'lines', 'markers', 'lines+markers'를 지원합니다.

기본적인 그래프는 여기까지이고 다음은 조금 더 꾸며보겠습니다. 일단 우리가 알고 있는 sin그래프는 되게 굴곡진데 이 그래프는 각진 부분이 많이 존재합니다. 이것들을 수정해보겠습니다.

x=np.arange(1,100)
y=np.sin(x)
fig=go.Figure()
fig.add_trace(
    go.Scatter(x=x,y=y,mode='lines',line_shape="spline"))
fig.show()

line_shape를 추가하여 조금더 굴곡진 그래프를 만들기는 했는데 제가 원랬던 그런 그래프는 아니네요,,, 

 

그래프의 제목과 x,y축은 barchart 그릴 때와 똑같이 fig.update_layout을 통해 가능합니다.

fig=go.Figure()
fig.add_trace(
    go.Scatter(x=x,y=np.sin(x),mode='lines',line_shape='spline'))
fig.update_layout(go.Layout(title={'text':'sin(x)',
                                  'font':{'color':'blue','size':30}},
                            xaxis={'title':{'text':'x'},
                                   'gridwidth':1,'showgrid':True},
                            yaxis={'title':{'text':'y'},
                                   'gridwidth':1,'showgrid':True},))
fig.show()

그래프 선의 색깔을 바꾸고 싶다면 fig.update_traces로 가능합니다. 색깔과 선의 굵기, 선의 스타일을 바꿔보겠습니다.

fig=go.Figure()
fig.add_trace(
    go.Scatter(x=x,y=np.sin(x),mode='lines',line_shape='spline'))
fig.update_traces(line_color='red',
                    line_width=4,
                    line_dash='dash'
                    )
fig.update_layout(go.Layout(title={'text':'sin(x)',
                                  'font':{'color':'blue','size':30}},
                            xaxis={'title':{'text':'x'},
                                   'gridwidth':1,'showgrid':True},
                            yaxis={'title':{'text':'y'},
                                   'gridwidth':1,'showgrid':True},))
fig.show()

색깔도 빨강으로 바뀌었고, 굵기도 굵어졌으며 선의 스타일도 점선으로 바뀐 모습입니다.

 

'시각화' 카테고리의 다른 글

[시각화] plotly bar chart  (0) 2024.01.30
[시각화] plotly 기초  (0) 2024.01.11
[시각화] matplotlib, seaborn BarChart  (0) 2024.01.10
[시각화] matplotlib, seaborn 라이브러리 비교  (0) 2024.01.08