jVectorMap을 개발자 버전으로 다운로드 하게 되면 convert.py 파일이 존재한다.
이 파일을 이용해서 shp 파일을 jVectorMap에서 사용가능하게끔 변환이 가능한데 이를 해야만 했었다......
우선 Ubuntu에 Python2.7.5를 설치해야 하는데 아래 의존성 관계를 먼저 해결해 주었어야 했다.
sudo apt-get install build-essential
sudo apt-get install libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
이후 home 디렉토리에 Python 2.7.5 를 wget으로 다운로드 받고
압축 풀고 인스톨
wget http://python.org/ftp/python/2.7.5/Python-2.7.5.tgz
tar -xvf Python-2.7.5.tgz cd Python-2.7.5/ ./configure make sudo make altinstall
jVectorMap에서 사용하는 converter.py는 아래 두 개의 패키지가 추가로 필요하다.
삽질 시작..
Shapely의 간편 설치를 위해 pip를 설치한다.sudo apt-get install python-pip
pip install Shapely
GDAL은 easy_install 을 사용한다.
에러난다.. 아...sudo easy_install GDAL
GDAL이 easy_install로 설치가 안된다. easy_install은 wget으로 파일을 받아와서 작업을 하는 방식이기에 wget으로도 안된다.
결국 아래 방법으로.. 진행sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable sudo apt-get update sudo apt-get install gdal
안된다..... 레파지토리가 깨진듯하다.. 방법이 없는건 아닌듯하다..
설치가 된다.. 근데 엄청 오래 걸린다........ 백그라운드로 실행 안한걸 후회할 정도로... 30분정도..svn checkout https://svn.osgeo.org/gdal/trunk/gdal gdal ./configure sudo make install
이렇게 설치하면 계정 Path에 설정해 주어야 하는데..
gdal 설치하다가 시간 다 보낸듯..echo " " >> $HOME/.bashrc echo "# GDAL environment variables" >> $HOME/.bashrc echo "export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH" >> $HOME/.bashrc source $HOME/.bashrc
맵 파일 넣고 convert를 해보니..이런 에러 나온다...Traceback (most recent call last): File "converter.py", line 10, in <module> from osgeo import ogr ImportError: No module named osgeo
찾아보니.. http://gis.stackexchange.com/questions/64398/importing-osgeo-module-in-ubuntu-10-04
다시 gdal... configure 부터..../configure --with-python sudo make install
이상 여기까지 삽질.... 2시간..
sudo apt-get install python-gdal sudo apt-get install python-shapely
위 두개면 설치 된다.... 아..
설치 다 했으니 아래 처럼 실행을 하면...python ../converter.py \ --width 1000 \ --country_name_index 7 \ --country_code_index 8 \ --where "ISO = 'KOR'" \ --input_file_encoding 'UTF-8' \ --name datag_korea \ --language en \ KOR_adm2.shp \ jquery-jvectormap-data-korea-aea-en.js
이런 에러가 나는데..ERROR 6: Unable to load PROJ.4 library (libproj.so), creation of OGRCoordinateTransformation failed.
아래 처럼 설치해주고..sudo apt-get install python-pyproj
확인도 해주어야 하고..심링크도 잡아 주어야 한다..../sbin/ldconfig -p | grep proj libproj.so.0 (libc6,x86-64) => /usr/lib/libproj.so.0
sudo ln -s /usr/lib/libproj.so.0 /usr/lib/libproj.so
확실하게 이것도 설치하자..
다시.. 실행하자....sudo apt-get install python-anyjson
아래는 결과..python ../converter.py \ --width 1000 \ --country_name_index 7 \ --country_code_index 8 \ --where "ISO = 'KOR'" \ --input_file_encoding 'UTF-8' \ --name datag_korea \ --language en \ KOR_adm2.shp \ jquery-jvectormap-data-korea-aea-en.js
vi로 열어보면...
올ㅋ
근데 안된다.....국가별로 지도를 뽑으려고 해보니 뭔가가 안맞다...같은 shp 파일이라도 뭔가가 다르다..? 열어봐야 아는건데..급한대로.. 다른 개발자가 작업한 곳을 찾아서 사용은 한다만...
안되는 이유는.. 작업이 죽는다..;;
행정동 레벨 2기준으로 작업을 할 경우 약 200여개의 행정동(시/군/구)가 나오는데 가상서버가 힘들어하더니 작업을 멈추네..
WIndow에서 아래처럼 지도는 나옴.
'웹 개발 > jVectorMap' 카테고리의 다른 글
Shape -> jVectorMap 변환 방법! (0) | 2013.07.25 |
---|---|
SVG를 jVectorMap으로... (0) | 2013.07.24 |
jVectorMap - Shape 다운로드 하기.. (0) | 2013.07.17 |
jVectorMap - Map Converting for Window (0) | 2013.07.17 |
jVectorMap - World Map with custom marker tooltip (0) | 2013.07.15 |