Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- queue
- 알고리즘 스터디
- javascript
- 알고리즘
- 프로그래머스
- Algorithm
- Join
- Matplotlib
- 파이썬
- type hint
- 데이터시각화
- Selenium
- 정보처리기사 c언어
- dataframe
- pandas
- 백준
- 선그래프
- MySQL
- python
- 자료구조
- 노마드코딩
- 알고리즘스터디
- programmers
- aws jupyter notebook
- 가상환경
- openCV
- Stack
- String Method
- NumPy
- 코딩테스트
Archives
- Today
- Total
조금씩 꾸준히 완성을 향해
[Folium] 단계 구분도(Choropleth Map) 표시하기 본문
지도 영역에 단계구분도(Choropleth Map) 표시하기
- 행정구역과 같이 지도 상의 어떤 경계에 둘러싸인 영역에 색을 칠하거나 음영 등으로 정보를 나타내는 시각화 방법
- 전달하려는 정보의 값이 커지면 영역에 칠해진 음영이 진해진다.
#경기도 인구변화 데이터를 불러와서 데이터프레임 df로 변환
df = pd.read_excel('/content/drive/MyDrive/ Encore Prac/경기도인구데이터.xlsx')
#'구분'열을 인덱스로 지정
df.set_index('구분', inplace=True)
# 컬럼명을 str타입으로 변환(map)
df.columns = df.columns.map(str)
#경기도 지도 만들기
g_map = folium.Map(location=[37.5502, 126.982],tiles='Stamen Terrain', zoom_start=11)
# json파일 불러와서 저장
import json
df_json = pd.read_json('/content/drive/MyDrive/ Encore Prac/경기도행정구역경계.json')
df_json.head(3) #상위 세 개 열 확인
#단계 구분도 넣기
folium.Choropleth(geo_data='/content/drive/MyDrive/ Encore Prac/경기도행정구역경계.json').add_to(g_map)
- json 인코딩 오류날 때 대처
# 인코딩 오류날 시
import json
json_path = '/content/drive/MyDrive/ Encore Prac/경기도행정구역경계.json'
try:
gdata = json.load(open(json_path), encoding='utf-8')
except:
gdata = json.load(open(json_path), encoding='utf-8-sig')
g_map = folium.Map(location=[37.5502, 126.982],tiles='Stamen Terrain', zoom_start=11)
folium.Choropleth(geo_data=gdata).add_to(g_map)
- 2017년의 인구분포 저장
#년도 지정
year= 2017
#서울 지도 만들기
g_map = folium.Map(location=[37.5502, 126.982],tiles='Stamen Terrain', zoom_start=8)
#Choropoleth 클래스로 단계구분도 표시하기
folium.Choropleth(geo_data='/content/drive/MyDrive/ Encore Prac/경기도행정구역경계.json',
data = df[year], #표시하려는 데이터
columns=[df.index, df[year]],#열지정
bins=[10000, 100000, 300000, 500000, 700000], #색상 범위 지정
key_on= 'feature.properties.name'
).add_to(g_map) #열지정
#지도를 html파일로 저장
g_map.save('./gyonggi_population_'+ str(year) + '.html')
'Python > 데이터 시각화' 카테고리의 다른 글
[Matplotlib] 그래프에 사용가능한 색 이름 모음 (List of named colors) (0) | 2023.02.12 |
---|---|
[Folium] 지도 만들기, Marker 표시하기 (0) | 2022.10.02 |
[Seaborn] 다양한 그래프 그리기3 (violinplot, jointplot, FacetGrid, pairplot) (0) | 2022.10.01 |
[Seaborn] 다양한 그래프 그리기2 (pie chart, boxplot, heatmap, stripplot, swarmplot, barplot, countplot) (0) | 2022.10.01 |
[Seaborn] 다양한 그래프 그리기1 (regplot, distplot, histogram, scatter plot) (0) | 2022.10.01 |