4. 파이썬 GIS 환경 생성#
4.1. 파이썬 환경 (Environments)#
윈도우(Windows)에서는 패키지 간의 종속성과 외부 라이브러리에 대한 종속성을 관리하기 어렵기 때문에 Python 패키지 설치가 까다로울 수 있습니다. 가끔씩 특정 툴에는 이전 버전의 패키지 또는 Python 버전이 필요할 수도 있습니다. 앞에서 언급했듯이 가능한한 하나의 소스(예. 동일한 conda 채널)에서 패키지를 설치하는 것도 좋은 방법입니다.
그러기 위해 서로 다른 Python 프로젝트에 필요한 패키지를 분리하여 관리할 수 있는 방법이 있습니다. 바로 Python 환경(environments)입니다.
일반적으로 Python 환경은 특정 작업 또는 버전에 필요한 Python 인터프리터(interpreter), Python 패키지, 기본 라이브러리와 같은 모든 툴을 설치하는 별도의 로컬 설치 공간입니다. Python에는 venv 모듈 및 virtualenv 패키지처럼 파이썬 환경 관리를 위해 기본적으로 제공하는 공식 도구가 있습니다. 그러나 앞선 도구들을 사용해 설치할 경우, GIS 패키지가 외부 라이브러리에 의존하기 때문에 Windows에서는 제대로 작동하지 않을 수 있습니다. 따라서, conda
를 사용하여 Python 환경을 관리하는 것을 추천드립니다.
또한 이 책에서는 conda
를 사용하여 Python 패키지를 설치하고 관리합니다. 이 책에서 필요한 모든 툴이 포함된 Python 환경을 만드는 방법은 아래에서 소개합니다.
4.1.1. Conda 환경 생성 : 방법 1#
Conda 공식 문서에는 conda 환경을 만들고 관리하는 방법에 대해 상세하게 설명된 페이지가 있습니다. Conda 환경을 만들려면 3 단계가 필요합니다.
환경 생성
환경 활성화
활성화된 환경에 패키지 설치
아래의 명령은 Anaconda 또는 Miniconda가 설치된 여러 운영 체제에서 작동합니다.
환경을 만들고 이름을 지정합니다.
conda create --name autogis
새로 만든 환경을 활성화합니다.
conda activate autogis
환경이 활성화 되면, 명령 프롬프트 내 줄 시작 부분에 활성화된 환경 이름이 표시되어야 합니다. 확인 후 활성화된 환경에 패키지를 설치합니다.
conda install -c conda-forge jupyterlab jupyterlab-git
conda install -c conda-forge geopandas
conda install -c conda-forge matplotlib
conda install -c conda-forge geojson
conda install -c conda-forge folium
필요한 모든 패키지를 설치한 후 autogis
conda 환경에 연결된 로컬 JupyterLab에서 작업할 수 있습니다.
jupyter lab
4.1.2. Conda 환경 생성 : 방법 2#
사전 정의된 구성(configuration) 파일을 기반으로 conda 환경을 생성하는 것도 가능합니다. conda 환경에 대한 요구 사항은 YAML 파일(파일 확장자 .yaml 또는 .yml)에 conda 환경에 대한 사항들을 작성합니다.
구성(Configuration) 파일은 다음과 같이 작성할 수 있습니다.
name: autogis
channels:
- conda-forge
dependencies:
- python=3.10
- myst-nb
- sphinx
- sphinx-book-theme
- jupyterlab
- jupyterlab-git
- bokeh
- folium
- geojson
- geopandas
- geopy
- matplotlib
- osmnx
- pyrosm
- r5py
구성(Configuration) 파일을 작성한 후, 해당 폴더로 이동하고 다음 명령을 실행하여 파일에 지정된 사양에 따라 새로운 conda 환경을 만듭니다.
conda env create --file=environment.yml
패키지 간의 종속성을 해결하고 필요한 패키지를 설치하는 데 오랜 시간이 걸릴 수 있습니다. 설치가 완료되면 새로운 GIS 패키지 환경을 사용할 수 있습니다. conda activate
를 사용하여 활성화합니다.
conda activate autogis