Plotly의 기능소개
Plotly를 이용해서 간단한 그래프를 그리고 그래프를 커스터마이징하는 과정을 진행했습니다. 이 장에서는 Plotly에서 지원하는 더룬 주요 기능에 대해서 설명합니다.
다양한 그래프 유형
Plotly는 다양한 그래프 유형을 지원하여 사용자가 다양한 형태의 데이터를 시각화할 수 있도록 합니다. 주요 그래프 유형으로는 선형 차트, 막대 차트, 원형 차트, 히스토그램, 산점도, 박스 플롯, 히트맵, 버블 차트, 트리맵, 지오스캐터 차트, 영역 차트, 극좌표 차트 등이 있습니다.
차트종류 | 목적 |
---|---|
선형 차트 (Line Chart) | 선형 차트는 시간의 경과에 따른 데이터 변화를 시각화하는 데 유용합니다. |
막대 차트 (Bar Chart) | 막대 차트는 범주형 데이터를 비교하는 데 유용합니다. |
원형 차트 (Pie Chart) | 원형 차트는 전체에 대한 각 부분의 비율을 시각화하는 데 유용합니다. |
히스토그램 (Histogram) | 히스토그램은 데이터의 분포를 시각화하는 데 유용합니다. |
산점도 (Scatter Plot) | 산점도는 두 변수 간의 관계를 시각화하는 데 유용합니다. |
박스 플롯 (Box Plot) | 박스 플롯은 데이터의 분포와 이상치를 시각화하는 데 유용합니다. |
히트맵 (Heatmap) | 히트맵은 두 변수의 값을 색상으로 시각화하는 데 유용합니다. |
버블 차트 (Bubble Chart) | 버블 차트는 산점도의 확장으로, 세 번째 변수를 점의 크기로 시각화합니다. |
트리맵 (Treemap) | 트리맵은 계층 구조를 색상과 면적으로 시각화하는 데 유용합니다. |
지오스캐터 차트 (Geoscatter Plot) | 지오스캐터 차트는 지도 위에 데이터 포인트를 시각화하는 데 유용합니다. |
영역 차트 (Area Chart) | 영역 차트는 선형 차트와 비슷하지만, 아래 영역을 색칠하여 데이터의 누적치를 강조합니다. |
극좌표 차트 (Polar Chart) | 극좌표 차트는 원형 축을 사용하여 데이터를 시각화합니다. |
Plotly는 이 외에도 다양한 특수 목적의 그래프를 지원합니다. 각 그래프 유형은 다양한 시각화 요구를 충족시키기 위해 커스터마이징이 가능합니다.
대화형 그래프
Plotly의 가장 큰 장점 중 하나는 대화형 그래프를 쉽게 생성할 수 있다는 점입니다. 마우스 오버, 클릭, 확대/축소 등의 기능을 통해 사용자와 상호작용할 수 있는 그래프를 만들 수 있습니다. 이러한 대화형 기능은 데이터 분석을 더욱 직관적이고 이해하기 쉽게 만듭니다.
대시보드와 통합
Plotly는 Dash와 함께 사용하여 대시보드를 쉽게 생성할 수 있습니다. Dash는 Plotly를 기반으로 한 대시보드 프레임워크로, 웹 애플리케이션을 만들기 위한 다양한 도구와 기능을 제공합니다.
출력 형식
Plotly는 그래프를 다양한 형식으로 저장할 수 있습니다. HTML, PNG, JPEG, SVG 등 여러 형식으로 저장할 수 있어 웹에 쉽게 삽입하거나 문서에 포함시킬 수 있습니다.
Plotly 그래프를 이미지 파일로 저장하려면 추가적으로 Kaleido 라이브러리를 설치해야 합니다. Kaleido는 Plotly 그래프를 PNG, JPEG, SVG와 같은 형식으로 저장하는 데 사용되는 도구입니다. 아래의 명령어를 샐행하여 Kaleido
를 설치합니다.
-U kaleido pip install
데이터를 로드하고 그래프를 생성한 후 이미지로 저장하기 위해 아래 코드를 실행합니다.
import pandas as pd
import plotly.express as px
= {
data "날짜": ["2024-01-01", "2024-01-02", "2024-01-03", "2024-01-04", "2024-01-05"],
"판매량": [150, 200, 170, 220, 180],
"판매왕": ["John", "Peter", "Peter", "Tony", "Bob"]
}
= pd.DataFrame(data)
df "날짜"] = pd.to_datetime(df["날짜"])
df[
= px.line(df, x="날짜", y="판매량", title="일별 판매량")
fig "fig1.png") fig.write_image(
위의 코드를 실행하면 위와 같이 그래프가 fig1.png
파일로 저장됩니다.