안녕하세요? mangoseed3434입니다.
이번에는 인터랙티브 그래프를 만드는 방법에 대해 실습할 수 있었습니다.
오늘도 'Do it! 쉽게 배우는 파이썬 데이터 분석'에 수록된 가이드를 따라하면서 포스팅을 작성합니다.

1. 인터랙티브 그래프(Interactive Graph)란?
인터랙티브 그래프 (Interactive Graph)
: 마우스 커서에 반응하며 실시간으로 범위를 바꿔서 볼 수 있는 그래프
인터랙티브 그래프를 통해 원하는 부분 혹은 관심 있는 부분만 선택적으로 자세히 볼 수 있다.
Python으로 인터랙티브 그래프를 그리기 위해서는 3단계의 준비가 필요하다.
1단계 : plotly 패키지 설치 ( cmd 열기 → pip install plotly 입력 및 엔터 )
2단계 : jupyter-dash 패키지 설치 ( cmd 열기 → pip install jupyter-dash 입력 및 엔터 )
3단계 : Jupyter lab 재부팅
jupyter-dash 패키지는 plotly 패키지로 만든 그래프를 노트북에 출력하는 패키지이다.
2. 산점도(Scatter Plot) 그리기

plotly 패키지를 이용해 산점도를 그리기 위해서는, px.scatter( ) 함수를 사용한다.
단, data_frame으로 시각화할 데이터 프레임을 지정한다는 데에 pd.scttaerplot( ) 함수와 차이가 있다.
그리고 hue가 아닌 color를 통해 표식의 색상을 구분한다.
pandas 패키지의 산점도 예시
pd.scatterplot(data = '데이터프레임 이름', x = '변수', y = '변수', hue = '변수')
plotly 패키지의 산점도 예시
px.scatter(data_frame = '데이터프레임 이름', x = '변수', y = '변수', color = '변수')

인터랙티브 그래프의 표식에 마우스 커서를 올리면 값이 나타난다.
이외에도 드래그를 하면, x축과 y축의 범위가 바뀌어서 그래프를 확대할 수 있다.
확대된 그래프는 더블클릭하면 원래 그래프로 돌아온다.
그리고 우측의 범례 항목을 클릭해서 특정 범주의 표식을 On/Off할 수 있다.
3. 막대 그래프(Bar Chart) 그리기

plotly 패키지를 이용해 막대 그래프를 그리는 과정도 pd.barplot( ) 함수를 이용하는 과정과 유사하다.
4. 선 그래프(Line Chart) 그리기

plotly 패키지를 이용해 선 그래프를 그리는 과정도 pd.lineplot( ) 함수를 이용하는 과정과 유사하다.
pandas패키지의 시각화 함수에서 plot만 제거하면 plotly패키지의 시각화 함수가 되는 경향성이 있는 듯 하다.
5. 상자 그림(Box Plot) 그리기

상자 그림은 px.box( ) 함수를 이용했다.
pandas 패키지를 이용해 상자 그림을 그리려면 pd.boxplot( ) 함수를 이용해야 하는데,
plotly 패키지를 이요하면 px.box( ) 함수를 이용한다.
오늘 공부한 인터랙티브 그래프는 비교적 간단했다.
단, pandas 패키지로 그린 그래프들은 shift+마우스 우클릭으로 그래프를 쉽게 저장할 수 있었는데,
plotly 패키지로 그린 그래프들은 shift+마우스 우클릭으로 저장이 안 되는 차이점이 있었다.
그래서 인터랙티브 그래프들은 별도로 HTML 파일로 저장했다.
정리하자면,
인터랙티브 그래프 그리기
1단계 : plotly 패키지 및 jupyter-dash 패키지 설치
2단계 : jupyter lab 재부팅
1. px..scatter( ) 함수 : 산점도 인터랙티브 그래프 그리기
2. px.bar( ) 함수 : 막대 인터랙티브 그래프 그리기
3. px.line( ) 함수 : 선 인터랙티브 그래프 그리기
4. px.box( ) 함수 : 상자 인터랙티브 그래프 그리기
다음에는 통계적 가설 검정과 유의확률에 대해 공부한 내용을 포스팅하겠습니다.
'Python 데이터 분석 입문' 카테고리의 다른 글
| (Python 데이터 분석 입문 12편) 머신러닝 모델, 의사결정나무 모델, 성능 평가 지수 (0) | 2026.01.07 |
|---|---|
| (Python 데이터 분석 입문 11편) t 검정, p-value, 상관분석, Heat Map 그래프 (0) | 2025.12.31 |
| (Python 데이터 분석 입문 09편) 데이터 분석 프로젝트: 한국인의 삶을 파악하기(下) (0) | 2025.12.26 |
| (Python 데이터 분석 입문 08편) 데이터 분석 프로젝트: 한국인의 삶을 파악하기(上) (0) | 2025.12.25 |
| (Python 데이터 분석 입문 07편) 그래프 그리기: Scatter Plot, Bar Chart, Line Chart, Box Plot (0) | 2025.12.22 |