[TIL] 2024-07-25 (데이터 시각화)TIL/2024.072024. 7. 26. 00:19
Table of Contents
728x90
Today I Learned (2024-07-25) 🤔
목차
오늘 공부한 내용 🧑🏻💻
1. KDT
plotly
plotly
는 대화형(인터렉티브) 그래프를 만들 수 있도록 도와주는 시각화 라이브러리이다.그래프를 확대하거나 데이터 포인트에 대한 정보를 툴팁으로 확인할 수 있다.
plotly 설치
plotly
를 설치하려면 아래의 커맨드를 입력해준다.pip install plotly
모듈 및 그래프 생성
graph objects 모듈
- 설명
- plotly 그래프 생성 및 제어와 기본이 되는 모듈이다.
- plotly 그래프의 근간이 되는 모듈이다.
- graph objects 모듈을 사용하면 Plotly의 그래프를 구성하는 각 요소를 세밀하게 제어할 수 있다. 하지만 복잡하다.!!🥹
- 설명
express 모듈
- 설명
- 내부적으로 만들어진 템플릿을 활용해서 그래프를 생성한다.
- 그래프 템플릿은
graph objects 모듈
을 기반으로 만들어졌다.
- 사용법
- Scatter Plot 생성
- 기본 데이터
import plotly.express as px
- 기본 데이터
- Scatter Plot 생성
기본 그래프 생성 및 제어
Scatter Plot
seaborn
과 사용법이 크게 다르지 않다.
사용법
Scatter Plot 생성
기본 데이터
import plotly.express as px fig = px.scatter( x=[1,2,3,4,5], y=[6,7,8,9,10] ) fig.show()
tips 데이터
hue
대신color
를 범주형 데이터를 표현한다.tips = px.data.tips() px.scatter( data_frame=tips, x='total_bill', y='tip', color='time' )
- 설명
Folium
인터렉티브한 지도를 만들고, 시각화 할 수 있도록 도와주는 라이브러리
지리적 데이터를 시각적으료 표현할 수 있다.
마커, 팁 등 추가할 수 있다.
Folium 설치
Folium 설치를 위해 터미널에 아래 명령어를 입력해준다.
pip install folium
지도(Map) 만들기
Map 객체 불러오기
Map
은 Folium에서 지도를 생성하는 객체이다.
Map 의 주요 인자
- location
- 지도의 중심을 [위도, 경도]로 설정하는 좌표
- zoom_start
- 초기 줌 레벨을 설정합니다. 값이 클수록 확대된 상태로 시작한다.
- tiles
- 지도 타일 스타일 선택
- 기본값은 OpenStreetMap
- width
- 지도의 너비를 설정
- height
- 지도의 높이를 설정
- min_zoom / max_zoom
- 각각 최소 줌 레벨, 최대 줌 레벨 설정
- location
예시 코드
기본 지도 생성
import folium Map = folium.Map( location=[37.5665, 126.9780], zoom_start=18 ) Map
데이터를 이용한 지도 생성
import random as rd latitudes = data["위도"] longitudes = data["경도"] lat_lon_pairs = list(zip(latitudes, longitudes)) colors = [ "lightblue", "orange", "beige", "lightred", "gray", "lightgray", "purple", "black", "blue", "darkblue", "darkgreen", "green", "cadetblue", "lightgreen", "darkred", "pink", "darkpurple", "red", ] for lat, lon in lat_lon_pairs: icon = folium.Icon(color=colors[rd.randint(0, len(colors) - 1)], icon="user") folium.Marker( location=[lat, lon], icon=icon, tooltip="나는 화장실", ).add_to(map) map
어려웠던 내용 📚
- 실습 문제에서 판다스를 다시 사용하려니까 기억이 잘 나지 않았다.
궁금한 내용과 부족한 내용 🙋🏻
- 데이터프레임의 순회에 대해 더 공부해야겠다.
pd.DataFrame.itertuples()
이것이 제일 빠르다고 한다.- 더 빠른 방법이 있다고 하지만
itertuples()
가 익숙하기 때문에 자주 사용할 것 같다.
- 더 빠른 방법이 있다고 하지만
느낀 점 💡
- 파이썬 과목이 끝났다. 무엇보다 시간이 많이 않기 때문에 압축해서 들어서 넘어간 부분도 많을 것이라고 생각이 든다. 하지만 어쩔 수 없다고 생각한다.
- 넘어간 부분에 대해서는 본인이 더 공부하면서 알아가야 한다고 생각도 한다.
특이사항🚨
- 고향 친구의 어머니께서 돌아가셨습니다. 그래서 6시에 칼같이 나와서 광명역 -> 광주송정 -> 장례식장 -> 광주송정 -> 수서역으로 가는 일정이라 피곤한 일정이였습니다...😭
- 하지만, 어렸을 때 친했던 친구의 가족분이 돌아가셨다고 하니 안 갈 수가 없었습니다. 허망한 기분이 들기도 합니다.
'TIL > 2024.07' 카테고리의 다른 글
[TIL] 2024-07-27 (텍스트 마이닝) (0) | 2024.07.27 |
---|---|
[TIL] 2024-07-26 (특강) (0) | 2024.07.27 |
[TIL] 2024-07-24 (데이터 시각화) (6) | 2024.07.25 |
[TIL] 2024-07-23 # 데이터 시각화 (0) | 2024.07.24 |
[TIL] 2024-07-22 (2) | 2024.07.23 |
@maneDataLab :: 마네의 데이터랩
배움에 즐거움을 느끼는 마네의 데이터랩 이미지 출처 : https://www.instagram.com/hoseobiiiiiii._.0410/
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!