반응형

지진 지역 지도에 표시하기2 - 지진 데이터를 인터넷에서 가져와 지도에 표시하기



이제 인터넷에 공개된 지진 데이터를 가져와 우리의 지도에 표시를 해보도록 하겠습니다.

미국 지질조사국 USGS는 다양한 지진 데이터를 제공하고 있는데, 이 포스팅에서 사용할 데이터는 프로그램을 구동하는 시간 기준으로 1주일간 전 세계적으로 발생한 규모 4.5 이상 지진입니다.


URL은 다음과 같습니다.

http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/4.5_week.csv


아래의 코드로 이 데이터가 어떤 형태로 되어 있는지 확인해봅니다.



위 코드에서 주석 처리한 부분은 나중에 실제로 사용할 코드입니다. 코드를 실행하면 다음과 같은 내용이 화면에 출력됩니다.


time,latitude,longitude,depth,mag,magType,nst,gap,dmin,rms,net,id,updated,place,type,horizontalError,depthError,magError,magNst,status,locationSource,magSource

2016-08-27T08:59:13.780Z,-29.0991,60.9897,10,4.8,mb,,51,9.213,0.51,us,us20006ui0,2016-08-27T09:17:32.040Z,"Southwest Indian Ridge",earthquake,9.6,1.9,0.09,38,reviewed,us,us

2016-08-27T08:24:09.990Z,53.1043,-166.7081,39.28,4.5,mb,,167,0.752,1.04,us,us20006uhu,2016-08-27T08:53:36.040Z,"86km S of Unalaska, Alaska",earthquake,8.1,6.8,0.076,51,reviewed,us,us

2016-08-27T04:51:06.190Z,-56.2823,-26.9039,66.12,5.4,mb,,83,5.831,0.83,us,us20006ugf,2016-08-27T05:09:29.040Z,"49km NNE of Visokoi Island, South Georgia and the South Sandwich Islands",earthquake,7.9,6.8,0.053,122,reviewed,us,us

2016-08-27T02:34:41.440Z,13.4315,57.8638,10,4.9,mb,,49,11.56,1.19,us,us20006ufv,2016-08-27T02:53:11.040Z,"Owen Fracture Zone region",earthquake,9.8,1.9,0.053,114,reviewed,us,us

2016-08-27T01:14:33.850Z,31.5284,77.7042,31.67,4.6,mb,,153,4.3,0.78,us,us20006ufk,2016-08-27T09:07:01.643Z,"9km W of Sarahan, India",earthquake,9.2,6.2,0.088,38,reviewed,us,us

...

...



출력된 내용에서 첫번째 줄을 보면 어떤 데이터가 있는지 알 수 있습니다. 모든 데이터는 콤마로 구분되어 있고 주요 내용은 다음과 같습니다.


  • 1번째: 지진 발생 시간
  • 2번째: 지진 발생 위도
  • 3번째: 지진 발생 경도
  • 4번째: 진원 깊이
  • 5번째: 지진 규모


나머지 부분은 이 포스팅에서는 사용하지 않을 내용이므로 패스하고, 이 포스팅에서 사용할 데이터는 3번째, 4번째, 5번째 데이터입니다.


이제 코드를 구현해보도록 합니다. 지진 지역 지도에 표시하기1의 'robin' 지도를 나타내는 코드에서 style.use('seaborn-talk') 다음 줄에 아래의 코드를 추가합니다.



그리고, plt.show() 앞 부분에 아래의 코드를 추가합니다.



이제 코드를 실행해보면 아래 그림과 같이 세계 지도에 최근 1주일간 전세계에서 발생한 규모 4.5 이상 지진 발생 위치를 빨간색 점으로 표시됩니다.



위 결과를 보면 아직도 구조 활동을 하고 있는 이탈리아 지진이 표시되어 있음을 알 수 있습니다. 윈도우에서 이 코드를 실행하고 있으면 Matplotlib 출력 화면에 있는 아이콘을 이용해 지도를 축소하고 확대할 수 있습니다. 아래 그림은 이탈리아 지진 지역을 자세히 보기 위해 지도를 확대한 것입니다.




이번 포스팅에서는 현재 기준으로 과거 1주일간 전세계에서 발생한 지진 지역을 빨간색 점으로 표시하는 방법을 다루었습니다. 다음 포스팅에서는 발생한 지진 규모에 따라 색상과 점의 크기를 다르게 표현하는 방법을 다루겠습니다.


반응형

+ Recent posts