연구개발/데이터시각화 (25) 썸네일형 리스트형 경주 지진: 한반도 지진 관측 사상 최대 지진 2016년 9월 12일 오후 7시 45분, 8시 35분 2차례 강력한 지진이 연달아 발생했습니다. 1차 지진의 규모는 5.1, 2차 지진의 규모는 5.8이라고 하는데, 서울에 사는 저도 진동을 꽤 느꼈는데 지진 진앙지 근처인 경주 지방에는 많은 사람들이 엄청나게 놀랐을 것 같습니다. 규모 5.8은 기상청에서 관측한 한반도 지진중 가장 강력하다고 알려져 있습니다. 아마 이 지진은 앞으로 경주 지진으로 불리며 회자 될듯 합니다. 아래 그림은 미국 지질 조사국(USGS)의 실시간 데이터를 받아서 지도에 그린 것입니다. 해당 지역은 양산 단층이 지나가는 곳인데, 이 곳은 예전부터 이 단층이 활단층이냐 아니냐 논란이 있었는데요,, 활단층일 가능성이 많은 것 같습니다. 만약 활성 단층이라면 이 부근에 있는 원전이 .. 한반도에 지진 발생 2016년 9월 9일 한반도 북부 북한 지역에 지진이 발생했다고 표시되어 있네요. 뉴스를 보니까 북한에서 핵실험을 한걸로 판명되었군요. 참,, 걱정이 이만저만 아닙니다. 국민 모두 일치단결하여 이 난국을 극복해야 할 것 같습니다.[출처] 한반도에 지진 발생|작성자 옥수별 지진 지역 지도에 표시하기3 지진 지역 지도에 표시하기3 - 발생한 지진 규모에 따라 다르게 표시하기 지진 지역 지도에 표시하기2에서는 USGS에서 제공하는 전세계에서 현재 기준 1주일간 발생한 규모 4.5이상의 지진을 발생한 위치에 빨간색 점으로 표시해봤습니다. 이제 이를 좀 더 응용하여 발생한 지진 규모에 따라 아래의 규칙으로 다른 크기의 원과 색상으로 표시를 해보도록 하겠습니다. 규모 6.0 이상 지진 : 빨간색규모 5.0 이상 지진 : 노란색규모 5.0 미만 지진 : 초록색 원의 크기는 발생한 지진 규모에 비례하게 만들겠습니다. 2편의 코드를 좀 수정하여 아래와 같이 구현합니다. 주요 변경 부분만 살펴보겠습니다. >>> mags.append(float(ret[4])) 발생한 지진 규모를 리스트인 mags에 추가합니다. >>>.. 지진 지역 지도에 표시하기2 지진 지역 지도에 표시하기2 - 지진 데이터를 인터넷에서 가져와 지도에 표시하기 이제 인터넷에 공개된 지진 데이터를 가져와 우리의 지도에 표시를 해보도록 하겠습니다.미국 지질조사국 USGS는 다양한 지진 데이터를 제공하고 있는데, 이 포스팅에서 사용할 데이터는 프로그램을 구동하는 시간 기준으로 1주일간 전 세계적으로 발생한 규모 4.5 이상 지진입니다. URL은 다음과 같습니다.http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/4.5_week.csv 아래의 코드로 이 데이터가 어떤 형태로 되어 있는지 확인해봅니다. 위 코드에서 주석 처리한 부분은 나중에 실제로 사용할 코드입니다. 코드를 실행하면 다음과 같은 내용이 화면에 출력됩니다. time,latit.. 지진 지역 지도에 표시하기1 지진 지역 지도에 표시하기1 - Basemap 설치하기 요즘 지진이 전세계적으로 자주 일어나고 있습니다. 제가 원래 지구물리학을 전공해서 지진에 대해서는 조금 아는 편입니다. 지진은 지구의 맨틀위에 둥둥 떠다니는 판이라 불리는 지각판들의 경계부분에서 대부분 일어나지만, 판경계가 아닌 판내부에서도 일어납니다. 일본은 판경계에 위치한 섬이라서 하루에도 몇번씩 지진이 발생하는 나라죠. 지진의 세기는 규모와 진도라는 용어를 사용하는데, 규모는 실제 지진 에너지의 크기이고, 진도는 땅이 흔들리는 정도를 의미합니다. 지진 규모는 5이지만 발생한 곳의 지질에 따라 진도가 작을 수도 있고 클 수도 있습니다. 따라서 실제 피해와 직결되는 것은 규모보다는 진도가 더 맞다고 볼 수 있습니다. 지진 이야기는 이쯤에서 마무리하.. 데이터 시각화 프로그래밍20 - 3D플로팅4 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍20 - 3D 플로팅4 이번 포스팅은 데이터 가시화 프로그래밍 마지막편으로 아래와 같은 3D 플로팅에 대해 살펴보고 마무리하겠습니다. 3D다각형 그래프3D 막대그래프3D화살표(quiver) 그래프3D평면에 2D 그래프 그리기3D평면에 텍스트 추가하기3D평면에서 서브플롯 지정하기 3D 다각형 그래프 그리기 3D 막대그래프 그리기 3D Quiver 3D 평면에 2D 그래프 그리기 3D 평면에 텍스트 삽입하기 3D 평면에서 서브플롯 구성하기 이상으로 Matplotlib을 이용해 데이터 시각화하는 방법에 대해 가볍게 살펴보았습니다.실제 Matplotlib의 다양한 기능들은 이번 포스팅에서 다룬 것보다 훨씬 방대하고 다양한 기능들을 제공하므로 관심 있는 .. 데이터 시각화 프로그래밍19 - 3D 플로팅3 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍19 - 3D 플로팅3 이번에는 3차원 좌표에서 그려진 surface에서 같은 값들을 연결한 등가선(Contour)을 표현하는 방법에 대해 알아보겠습니다. Contour에는 같은 높이를 이어서 만든 등고선, 같은 압력을 이어서 만든 등압선, 같은 온도를 이어서 만든 등온선 등 다양한 종류가 있습니다. Matplotlib은 다양한 형태로 Contour를 아래와 같은 다양한 방법으로 그려주는 기능을 제공합니다. 3차원 좌표에 단순히 Contour를 그려줌Contour를 3차원 형태의 띠로 표현해줌Contour를 3차원 형태의 면으로 표현해줌xy, yz, zx 평면에서 바라볼 때의 Contour를 각 평면에 투사하여 표현해줌 자 그러면 실제 코드를 보.. 데이터 시각화 프로그래밍18 - 3D 플로팅2 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍18 - 3D 플로팅2 Matplotlib을 이용한 3D 플로팅 예는 대부분 알려진 복잡한 수학식을 이용한 것입니다. 실제 데이터를 3D 플로팅으로 분석하는 경우 이런 복잡한 수학식이 아니라 데이터를 어떻게 표현하고 나타낼지에 관한 아이디어가 중요한 것이 되겠죠. 이번 포스팅에서는 아래와 같은 것들이 어떻게 표현되는지에 대해 소개합니다. Surface 플로팅Try-Surface 플로팅 아래 예제들은 Matplotlib 문서에 제시되어 있는 것들이며, 대부분이 3차원 좌표를 설정한 후 3D 플로팅을 위한 수학방정식을 파이썬으로 구현하고, 이 방정식으로 구한 x, y, z값들을 3차원 좌표상에 그리되 표면을 특정한 색상으로 칠하거나 삼각형으로 채워서.. 이전 1 2 3 4 다음