-
[plotly] 파이썬에서 꺾은선 그래프(Line Chart) 그리기Python/시각화, 이미지 2025. 5. 23. 00:58반응형

📈Plotly로 꺾은선 그래프(Line Chart) 그리기
파이썬 데이터 분석에서 시각화는 아주 중요한 단계입니다. 특히 시간의 흐름에 따른 변화를 표현할 때 꺾은선 그래프(line chart) 는 매우 유용하죠. 이번에는 파이썬 초보자도 쉽게 사용할 수 있는 플로틀리(plotly) 라이브러리를 활용하여 꺾은선 그래프를 그리는 방법을 알아보겠습니다.
plotly 알아보기
plotly는 인터랙티브한 그래프를 쉽게 만들 수 있도록 도와주는 파이썬 시각화 라이브러리입니다. HTML 웹 페이지에서도 그래프를 인터랙티브하게 보여줄 수 있으며, 판다스 데이터프레임(pandas.DataFrame) 을 곧바로 사용할 수 있는 편의성 덕분에 많은 사람들이 이용하지요. 꺾은선, 막대, 파이, 산점도 등 다양한 그래프를 지원하기 때문에 범용성도 좋습니다.
꺾은선 그래프 예제
꺾은선 그래프는 플로틀리 익스프레스(plotly.express) 를 이용하면 간편하게 그릴 수 있습니다. 아래 예제는 플로틀리 내장 데이터 중
gapminder데이터를 활용해 캐나다의 기대수명을 시각화하는 작업입니다.import plotly.express as px # gapminder 데이터를 불러온 뒤, Canada만 필터링합니다. df = px.data.gapminder().query("country == 'Canada'") df.head()country continent year lifeExp pop gdpPercap iso_alpha iso_num 240 Canada Americas 1952 68.75 14785584 11367.16112 CAN 124 241 Canada Americas 1957 69.96 17010154 12489.95006 CAN 124 242 Canada Americas 1962 71.30 18985849 13462.48555 CAN 124 243 Canada Americas 1967 72.13 20819767 16076.58803 CAN 124 244 Canada Americas 1972 72.88 22284500 18970.57086 CAN 124 gapminder데이터셋은 국가, 대륙, 연도, 수명, 인구, 1인당 GDP, ISO 국가코드, ISO 국가코드 번호 열이 작성된 데이터프레임입니다. 위 코드는 그중에서 캐나다 정보만을 필터링한 뒤, 시각화를 위해 살펴보는 코드입니다.# x축: year (연도), y축: lifeExp (기대 수명) 데이터로 꺾은선 그래프 그리기 fig = px.line(df, x="year", y="lifeExp", title="캐나다의 연도별 기대 수명") fig.show()
다양한 데이터 이용하기
# 캐나다, 미국, 멕시코 데이터 추출 df = px.data.gapminder().query("country in ['Canada', 'United States', 'Mexico']") # 각 나라의 기대 수명을 비교하는 꺾은선 그래프 fig = px.line(df, x="year", y="lifeExp", color="country", title="아메리카 국가의 연도별 기대 수명 비교") fig.show()
만약 그래프를 그릴 때, 다양한 데이터를 함께 입력하고 싶다면 color 패러미터를 이용하면 됩니다. 위 코드는 캐나다, 미국, 멕시코 데이터를 활용해 국가별 비교를 꺾은선 그래프로 표현해 보았습니다.
그래프 파일 저장하기
fig.write_html("life_expectancy.html")만약 작성한 인터렉티브 플롯을 저장하고 싶다면, write_html() 함수를 이용할 수 있습니다. 이 함수는 파일을 저장할 경로를 패러미터로 입력하면 손쉽게 도표를 HTML 파일로 저장할 수 있답니다.
- 학습 데이터 참조: https://plotly.com/python/line-charts/
반응형'Python > 시각화, 이미지' 카테고리의 다른 글
누끼 따는 사이트 대신 파이썬으로 이미지 배경 제거해보기 (2) 2025.08.14 [seaborn] 설문조사 데이터로 막대그래프 시각화 해보기 (4) 2024.11.07 [OpenCV] 파이썬 스테레오 비전으로 이미지의 심도 알아보기 (Stereo Vision) (1) 2023.08.23