세계지도-21(그림자 파일 만들기)

13451 단어 QGISPython
세계지도에 사용할 음영 파일을 만들 수 있을지 찾고 있습니다.
6.1. Lesson: 새 벡터 데이터 세트 만들기
https://docs.qgis.org/2.18/ja/docs/training_manual/create_vector_data/create_new_vector.html
새로운 직장을 구해서 해봤어요.
QGIS, QGIS 설치 필요
파이톤의 세계지도 -20(지도 이미지에 위치 정보 부여)
https://qiita.com/ty21ky/items/a7c648c855f077ff515f
참조해주세요.
절차.
1. QGIS Desktop을 시작합니다.
2. 새 농담 파일 레이어를 클릭


위 시나리오에서 info
'아이디','name'은 위에서 지정한 이름이고'RINGNIUM','SHAPENUM'은 자동이다.
'RINGUM'이 같은 이름일 때의 번호입니다.각 이름의 번호는?
[{'id':1, 'name': 'AB', 'RINGNUM': 1, 'SHAPENUM': 1},
{'id':2, 'name': 'AB', 'RINGNUM': 2, 'SHAPENUM': 1},
{'id':3, 'name': 'AB', 'RINGNUM': 3, 'SHAPENUM': 1},
{'id':4, 'name': 'AB', 'RINGNUM': 4, 'SHAPENUM': 1},
{'id':5, 'name': 'AL', 'RINGNUM': 1, 'SHAPENUM': 2},
{'id':6, 'name': 'B', 'RINGNUM': 1, 'SHAPENUM': 3},


3.
파이톤의 세계지도 -20(지도 이미지에 위치 정보 부여)
https://qiita.com/ty21ky/items/a7c648c855f077ff515f
구문을 생성합니다.tif 파일을 엽니다.



4. 레이어 패널에 추가된 래스터 레이어를 레이어 패널의 맨 아래로 드래그합니다.(이렇게 하지 않으면 땅을 만들어도 보이지 않는다)
5. 층 패널에 추가된 울타리 층을 오른쪽 테두리 > 층으로 바꾸려면 누르십시오

6. 층 패널의 농담 파일의 층을 선택하고 오른쪽 지우기 > 편집 모드로 전환합니다

7. "땅 추가"를 클릭

클릭하여 다각형 제작.

종료를 마우스 오른쪽 버튼으로 클릭합니다.

지물 속성 대화상자를 표시합니다.
id-1 (숫자)
name - test
OK를 누르면 지물을 제작할 수 있다.
8. "땅 추가"왼쪽에 있는 플로피 아이콘을 클릭하여 저장합니다.
9. 층 패널의 농담 파일의 층을 선택하고 오른쪽 지우기 > 편집 모드 전환을 누르면 편집 모드를 해제합니다.
10. 항목을 저장합니다.
#!/usr/bin/python3
# coding: UTF-8

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
import japan_border2 as jb2 #都府県境界線

font = {'family': 'IPAGothic'}  # 日本語Fontを指定

lon1 = 135.50
lat1 = 34.5
lon2 = 11.0
lat2 = 13.0

map = Basemap(llcrnrlon=lon1-lon2,llcrnrlat=lat1-lat2,urcrnrlon=lon1+lon2,urcrnrlat=lat1+lat2,resolution='i',projection='cyl')

map.drawcoastlines() #海岸線

jb2.prefectural_bound(map = map) #都府県境界線

map.readshapefile('test1', 'test', color ='m')

print(map.test)

plt.show()

다각형의 좌표
$ ./test.py
[[(134.8980608886258, 32.092860695379926), (143.00363355629517, 32.04056667816916), (140.70269679902128, 29.112101714366027), (135.2641190091012, 28.223103421782938), (134.8980608886258, 32.092860695379926)]]
다각형을 칠하다
#!/usr/bin/python3
# coding: UTF-8

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
import japan_border2 as jb2 #都府県境界線
from matplotlib.patches import Polygon
from matplotlib.collections import PatchCollection
import numpy as np

font = {'family': 'IPAGothic'}  # 日本語Fontを指定

lon1 = 135.50
lat1 = 34.5
lon2 = 11.0
lat2 = 13.0

fig     = plt.figure() #shp_color
ax      = fig.add_subplot(111)

map = Basemap(llcrnrlon=lon1-lon2,llcrnrlat=lat1-lat2,urcrnrlon=lon1+lon2,urcrnrlat=lat1+lat2,resolution='i',projection='cyl')

map.drawcoastlines() #海岸線

jb2.prefectural_bound(map = map) #都府県境界線

map.readshapefile('test1', 'test', drawbounds = False)

patches  = [] 

for info, shape in zip(map.test_info, map.test): 
    if info['name'] == 'test':
        patches.append( Polygon(np.array(shape), True) )

ax.add_collection(PatchCollection(patches, facecolor= 'r', edgecolor='k', linewidths=1., zorder=2))

plt.show()

좋은 웹페이지 즐겨찾기