2018~2023년 범죄 데이터 기반 지역별 범죄 발생 분석 및 시각화 대시보드 구축
해당 프로젝트는 Streamlit, Altair, Pydeck, GeoJSON을 활용하여
연도별·지역별·범죄유형별 발생 현황을 직관적으로 탐색할 수 있는 대화형 분석 웹 애플리케이션을 구현하는 것을 목표로 합니다.
- 범죄 데이터는 시민들의 안전과 직결되는 중요한 공공 데이터이며,
실제로 연도별·지역별 패턴 변화를 분석하면 의미 있는 인사이트가 많습니다. - 기존 제공 자료는 표 형태로 단순 나열되어 있어 지역별 변화나 공간적 패턴 파악이 어려움
- 사용자가 지도 기반 시각화 + 필터링 기능을 통해 원하는 지역과 범죄 유형을 쉽게 분석할 수 있는 대시보드를 만들고자 함
- 실무에서 자주 사용되는 Streamlit 기반 웹 대시보드를 직접 구축하며 데이터 엔지니어링·시각화 역량을 강화하기 위함
- 2018~2023년도 범죄 데이터의 형식이 제각각이라
2023년 기준 long-format(세로형 포맷) 으로 전부 통일 - 컬럼 정리:
범죄대분류,범죄중분류,시도,세부지역,지역원본,발생건수
- 모든 연도별 CSV 파일을 자동 로드
- 연도마다 총 발생 건수 계산
- Altair 라인차트로 2018~2023 전체 범죄 발생 추세 시각화
- 한국의 17개 시도 좌표를 기반으로 Pydeck ScatterplotLayer 활용
- 발생건수에 따라
- 버블 크기
- 버블 색상
을 동적으로 설정
- 사용자가 선택한 시도에 대해 GeoJSON 레이어로 상세 지도 표시
- 지역명 불일치를 해결하기 위해 지역명 정규화(normalize) 알고리즘 직접 구현
- “천안시 서북구”, “천안시서북구” 등 문제 해결
- “세종특별자치시”, “제주특별자치도”와 같은 복합명도 처리
- 필터링된 데이터에서 발생건수 많은 지역 TOP-N 자동 계산
- 막대그래프(bar chart)로 제공
- Tooltip 활용해 값 상세 확인 가능
- 전체 배경을 밝은 톤으로 설정
- Metric 카드 디자인 개선
- 지도/차트 간 레이아웃 균형 조절
- 사용자 친화적인 Sidebar 구성
👉 프로젝트 시연 영상 보러가기
(YouTube 또는 MP4 링크 삽입)
| 이름 | 역할 | 담당 업무 |
|---|---|---|
| 박찬서 | 팀장 / 총괄 | AI와 소통 |