본문 바로가기

코딩TIPS

[seaborn] lineplot 그래프 그리기

반응형

seaborn의 lineplot을 이용해서 그래프를 그려보겠습니다.

 

라이브러리 import 및 데이터를 load합니다. seaborn내의 flights 데이터를 load했습니다.

import matplotlib.pyplot as plt
import seaborn as sns

sns.set_style("whitegrid")

flights = sns.load_dataset("flights")
flights.head()

1949~1960년 까지의 월별 승객수 데이터입니다.

기본 line chart를 그리는 방식은 data지정 x축 데이터 선택, y축 데이터 선택이 되겠습니다.

sns.lineplot(data='data지정', x='x축 데이터', y='y축 데이터)

flights_may=flights.loc[flights['month']=='May']

sns.lineplot(data=flights_may,x=flights_may['year'],y='passengers')
plt.show()

전체 데이터중 5월 데이터만 flights_may 에 저장해서 연도별 승객수의 line chart를 그렸습니다.

flights data의 연도별 승객수를 linechart로 그려볼까요

sns.lineplot(data=flights,x=flights['year'],y='passengers')
plt.show()

5월만 그린 그래프와는 다르게 색깔이 추가되었네요.

연도별(1~12월)의 각 월별 12개의 데이터가 존재하고, 평균값이 중간에 진한라인의 선이 됩니다.

다른 색깔의 범위는 95% 신뢰구간으로 아래의 계산식으로 계산된 결과가 표시됩니다.

월별로 그래프를 나누어서 그려보겠습니다. 

입력 parameter에 hue를 'month'로 지정하면 됩니다.

sns.lineplot(data=flights,x=flights['year'],y='passengers',hue="month")
plt.show()

style='month'로 지정하니 각 월별 line의 모양이 바뀌었습니다.

sns.lineplot(data=flights,x=flights['year'],y='passengers',hue="month",style="month")
plt.show()

markers=True로 지정하면 아래와 같이 연도별 데이터가 있는 부분에 marker가 생깁니다.

sns.lineplot(data=flights,x=flights['year'],y='passengers',hue="month",style='month', markers=True)
plt.show()

위의 그래프에서 dashes=False로 지정하면 선 모양은 실선으로 바뀌고 marker만 월별 다르게 표시됩니다.

sns.lineplot(data=flights,x=flights['year'],y='passengers',hue="month",style='month', markers=True, dashes=False)
plt.show()

 

 

이상으로 seaborn의 lineplot을 이용해서 그래프를 그려봤습니다.

반응형