[python] Matplotlib로 맵 플롯 그리기

이번 포스트에서는 Matplotlib 라이브러리를 사용하여 맵 플롯(map plot)을 그리는 방법을 알아보겠습니다. 맵 플롯은 지리적 데이터를 시각화하는 데 사용되며, 특히 지도 위에 데이터를 표현하는 데 유용합니다.

Matplotlib 설치하기

먼저, Matplotlib 라이브러리를 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다:

pip install matplotlib

예제 코드

다음은 Matplotlib를 사용하여 맵 플롯을 그리는 간단한 예제 코드입니다. Basemap 클래스를 사용하여 지도를 생성하고, scatter 메서드를 사용하여 데이터를 플롯(plot)합니다.

import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap

# 지도 생성
map = Basemap(projection='merc', lat_0=0, lon_0=0,
              resolution='l', area_thresh=1000.0,
              llcrnrlon=-180, llcrnrlat=-90,
              urcrnrlon=180, urcrnrlat=90)

# 배경 지도 그리기
map.drawcoastlines()
map.drawcountries()
map.fillcontinents(color='coral', lake_color='aqua')
map.drawmapboundary(fill_color='aqua')

# 데이터 플롯
lons = [-74.0059, -122.4194, 139.6917]  # 경도
lats = [40.7128, 37.7749, 35.6895]  # 위도
val = [100, 200, 300]  # 데이터 값
x, y = map(lons, lats)
map.scatter(x, y, c=val)

# 컬러바 추가
plt.colorbar(label='Data Value')

# 그래프 표시
plt.title('Map Plot')
plt.show()

위의 코드에서 lons, lats, val 리스트는 각각 데이터 포인트의 경도, 위도, 그리고 해당 데이터 값입니다. Basemap 클래스의 projection 매개변수를 적절히 설정하여 원하는 지도 투영법을 선택할 수 있습니다.

실행 결과

위의 코드를 실행하면 다음과 같은 맵 플롯이 생성됩니다:

Map Plot

결론

Matplotlib을 사용하여 맵 플롯을 그리는 방법에 대해 알아보았습니다. 이를 활용하면 지리적 데이터를 시각적으로 표현할 수 있고, 데이터 분석 및 시각화에 도움이 될 수 있습니다.

참고 자료