Data Visualization

Data Visualization - US Corona 분석하기 Part2

electronicprogrammer 2020. 10. 10. 02:10

데이터 출처 : www.kaggle.com/fireballbyedimyrnmom/us-counties-covid-19-dataset

 

US counties COVID 19 dataset

NYT's github CSV on COVID19 per US counties

www.kaggle.com

 

ipynb file : github.com/sangHa0411/DataScience/blob/main/US%20Corona%20Cases.ipynb

 

sangHa0411/DataScience

Contribute to sangHa0411/DataScience development by creating an account on GitHub.

github.com

 

이전 포스팅 : electronicprogrammers.com/25?category=893647

 

Data Visualization - US Corona 분석하기 Part1

데이터 출처 : www.kaggle.com/fireballbyedimyrnmom/us-counties-covid-19-dataset US counties COVID 19 dataset NYT's github CSV on COVID19 per US counties www.kaggle.com ipynb file : github.com/sangHa0..

electronicprogrammers.com

 

먼저 데이터에 대한 정리를 다시 해보도록 하겠습니다.

데이터에는 날짜 , 지역 , 주 , 코로나 확진 및 사망과 같은 데이터가 있습니다.

 

저번 포스팅에서는 먼저 주 상관없이 각 날짜에 대한 확진자수에 대한 정보를 그래프로 그려봤습니다.

 

그리고 각 주에 대한 위치 정보를 참고해서 Basemap을 이용해서 US 지도를 그려보았습니다.

 

이제 US지도에 각 주를 표기하였으니 본 데이터에 있는 각 주에 날짜별로 확진자 정보를 시각화하기 위해서 matplotlib의 animation을 이용해보겠습니다.

먼저  날짜를 Key로 해서  주의 이름과 확진자 정보를  Dictionary로 하는 Dictionary로 만들었습니다.

그 구조는 아래에 보시면 이해하시기 편하실 것입니다.

전체 Dictionary구조인데 Dictionary의 Value가 다시 Dictionary가 되는 구조입니다.

 

이제 이 Dictionary를 이용해서 각 주의 위도 및 경도 그리고 확진자 수를 각 리스트에 나누어서 저장합니다.

주의 할 것은 Basemap위에 표기하는 것이 목표이기 때문에 위해서 만든 기존 주의 위도 및 경도 정보를 Basemap의 입력인자로 넣어서 새로운 X , Y 좌표를 구해야 한다는 것입니다.

 

이제 matplotlib의 animation을 구현하기 위한 라이브러리를 불러옵니다.

 

animation을 jupyter notebook에 보이게 하기 위해서 matplotlib 설정을 해줍니다.

 

이제 최종적으로 animation 함수를 구현해보겠습니다.

정리하자면 먼저 US지도인 basemap을 그립니다,

그리고 FuncAnimation함수에 들어갈 animate함수를 저희가 직접 구현한다음에 입력해주어야 합니다.

그러면 이 animate함수가 i가 0부터 (FuncAnimation의 인자로 입력된) frames까지 1씩 증가되면서 입력되면서 계속 반복 수행됩니다,

 

따라서 저는 i가 0 부터 249까지 1씩 증가되면서 입력되니 key를 가져와서 날짜를 표기하도록 하고 key를 통해서 얻은 Dictionary에서 각 주의 정보와 확진자 정보를 얻어서 지도에 표기하도록 합니다.

 

포스팅에 용량제한이 있어서 전체를 올리지 못하고일부분만 올린 결과를 보여드리도록 하겠습니다.

 

 

matplotlib의 animation에 대해서는 아래의 참고자료에서 잘 설명되어 있습니다.

참고 자료1. Matplotlib Animation : towardsdatascience.com/animations-with-matplotlib-d96375c5442c

 

Animations with Matplotlib

Animations are an interesting way of demonstrating a phenomenon. We as humans are always enthralled by animated and interactive charts…

towardsdatascience.com