본문 바로가기
데이터 분석/시각화

Plotly 선 그래프(Line Chart, 라인 차트) 꾸미기 - 선 색깔, 선 스타일, 선 굵기, 텍스트(annotation)

by 부자 꽁냥이 2022. 4. 8.

안녕하세요~ 꽁냥이에요.

 

꽁냥이는 요즘 Plotly를 공부한 내용을 포스팅하고 있어요. 지난 포스팅에서는 Plotly를 이용하여 선 그래프(Line Chart, 라인 차트)를 그리는 방법에 대해서 알아보았는데요.

 

이번 포스팅에서는 선 색깔, 선 스타일, 선 굵기를 조절하는 것과 같이 심심한 선 그래프를 꾸며 보는 방법에 대해서 소개하겠습니다. 또한 각 점에 데이터 값을 나타내는 텍스트(annotation)도 추가하는 방법을 알아보겠습니다.


   Plotly 선 그래프(Line Chart, 라인 차트) 꾸미기 

1) graph_object

선 색깔, 선 스타일, 선 굵기는 go.Scatter에서 line에 딕셔너리 형태로 인자를 조절하여 꾸밀 수 있습니다. 

 

아래 코드에서 보는 바와 같이 line에 color(선 색상), width(선 굵기), dash(선 스타일)을 지정할 수 있습니다. 색상은 Hex 코드나 RGB컬러를 이용한 문자값을 넣어주면 되고 width 값에는 숫자를 넣어줍니다. 마지막으로 dash에 넣는 값은 plotly에서 사전 정의된 값을 보면 됩니다. dash에 들어갈 값은 여기를 참고해주세요.

 

또한 각 마커에 y 데이터 값을 텍스트(text, textposition)로 나타냈습니다. 이때 mode='lines+markers+text'로 설정해줘야 제대로 표시됩니다.

추가적으로 범례(name, showlegend)도 표시가능하도록 했습니다.

import plotly.express as px
import plotly.graph_objects as go

line_color = '#79db93'

fig = go.Figure() # Figure 추가
fig.add_trace(go.Scatter(x=[1,2,3], y=[4, 2, 1], mode='lines+markers+text',
                         line={'color':line_color, # 선 색깔
                               'width':2, # 선 굵기
                               'dash':'dash' # 선 스타일
                              },
                         text=['4', '2', '1'], # 텍스트 추가
                         textposition='top right', # 텍스트 포지션
                         marker={'color':line_color}, # 마커 추가
                         name='Label1', # 범례
                         showlegend=True, # 범례 표시
                        )) # 선 그래프 추가 입니다.

fig.show() # 그래프 출력 이 부분은 생략해도 그래프는 출력됨.

2) express

plotly.express를 이용하여 선 그래프를 꾸밀 수도 있습니다. 구체적인 설명은 주석으로 대체하겠습니다.

line_color = '#79db93'

fig = px.line(x=[1,2,3], y=[4, 2, 1],
              text = ['4', '2', '2'], markers=True) # Figure 추가
fig.data[0].line.color = line_color # 선 색상
fig.data[0].line.width = 2 # 선 굵기
fig.data[0].line.dash = 'dash' # 선 스타일

fig.data[0].marker.color = line_color # 마커 색상

fig.data[0].textposition='top right' # 텍스트 위치
fig.data[0].name = 'Label1' 
fig.data[0].showlegend = True

fig.show() # 그래프 출력 이 부분은 생략해도 그래프는 출력됨

 


지금까지 Plotly에서 뭔가 허전한 선 그래프를 꾸며보는 방법(선 색깔, 선 스타일, 선 굵기, 텍스트 추가)을 알아보았습니다. 알아두면 유용하게 써먹을 수 있어요. 

 

다음에도 좋은 내용으로 찾아뵙겠습니다. 안녕히 계세요.


댓글


맨 위로