-
전국 도시 공원 데이터 지도로 시각화 With Python, MapboxData Analysis/Environment 2021. 3. 13. 21:51
오늘 포스팅에서는 공공데이터터에서 정국 도시 공원 위치 데이터를 가져와서 Mapbox를 이용해 지도에 시각화해보도록 하겠다. 여기서 사용되는 데이터는 다음 링크에서 가져올 수 있다.
www.data.go.kr/data/15012890/standard.do
전국 공원 지도 시각화
아래 지도에서 마우스로 호버링하면 전국 공원별 위경도, 주소, 공원명, 공원 면적 데이터를 확인할 수 있다. 확실히 인구가 많은 수도권에 공원 수가 밀집되어 있는 점을 확인할 수 있다.
전국 공원 지도 시각화 클러스터링
다음으로 공원 수를 기준으로 클러스터링 시각화하도록 하겠다.
Python Code
import pandas as pd df=pd.read_csv('C:/Users/banad/Downloads/park.csv',encoding='euc-kr') df=df.fillna('') df2=df[['공원명', '소재지지번주소','공원면적','제공기관명','위도','경도']] df2=df2.rename(columns={'위도':'lat','경도':'lon'}) df2=df2[df2['lat']!=''] df2=df2[df2['lon']!=''] df2['lat']=df2['lat'].astype(float) df2['lon']=df2['lon'].astype(float) from mapboxgl.utils import df_to_geojson import json geo_data = df_to_geojson( df=df2, properties=['공원명', '소재지지번주소','공원면적','제공기관명'], lat='lat', lon='lon', precision=5, filename = "parks.geojson" ) geo_data_2 = 'parks.geojson' with open(geo_data_2) as f: data = json.loads(f.read()) from mapboxgl.viz import * token = '~' center = [128.033400, 36.801156] viz = CircleViz( data, access_token=token, center=center, zoom=6.2) viz.show() viz.create_html('parks.html') from mapboxgl.utils import ( create_numeric_stops, create_color_stops ) color_stops = create_color_stops([1,10,50,100], colors='BrBG') cviz = ClusteredCircleViz(data, access_token=token, color_stops=color_stops, radius_stops=[[1,5], [10, 10], [50, 15], [100, 20]], radius_default=2, cluster_maxzoom=10, cluster_radius=30, label_size=12, opacity=0.9, center=center, zoom=6) cviz.show() cviz.create_html('parks_cluster.html')
'Data Analysis > Environment' 카테고리의 다른 글
한국지형/포유류 분포도 3d 웹맵 Qgis &Qgisthreejs.js (0) 2021.03.17 전국 시도별 신재생 에너지(태양광, 풍력, 수력) 데이터 분석 with Python (0) 2021.03.14 한국지형/곤충 분포도 3d 웹맵 Qgis &Qgisthreejs.js (0) 2021.03.10 지난 10년간 대한민국 시도별 온도/강수량 데이터 분석 & 시각화 With Python (0) 2021.03.09 강원도 춘천시 지형/토심/경사 Analysis 3d 웹맵 Qgis/Qgisthreejs.js (0) 2021.03.05