2013年11月11日月曜日

10 - 国土数値情報で東京を表示 2 - 地図の表示

10-3 地図の表示
最初に、マップデータ N03-13_13_130401 の情報を知るために管理ツール gdal-bin を使います。
ないときは、Synapticパッケージマネージャでインストールします。
tokyo フォルダを mapdata フォルダへ移動し、利用可能なレイヤ名を表示します。

~/ダウンロード$ mv tokyo ../mapdata/
~/ダウンロード$ cd ../mapdata/
~/mapdata$ ls mapdata/
110m_cultural    world.topo.bathy.200410.3x5400x2700.jpg
satelliteImages  world.topo.bathy.200410.3x5400x2700.jpgw
tokyo            worlddata

~/mapdata$ ogrinfo tokyo
INFO: Open of `tokyo'
      using driver `ESRI Shapefile' successful.
1: N03-13_13_130401 (Polygon)

次に、N03-071001_13 レイヤのデータを表示します。

~/mapdata$ ogrinfo -summary tokyo N03-13_13_130401
INFO: Open of `tokyo'
      using driver `ESRI Shapefile' successful.

Layer name: N03-13_13_130401
Geometry: Polygon
Feature Count: 3297
Extent: (136.069482, 20.425119) - (153.986898, 35.898424)
Layer SRS WKT:
(unknown)
N03_001: String (10.0) -> [都道府県名]
N03_002: String (20.0) -> [支庁名]
N03_003: String (20.0) -> [郡政令名]
N03_004: String (20.0) -> [市区町村名]
N03_007: String (5.0) -> [行政区域コード]

属性名は、

データのダウンロード(2.各データの詳細)行政区域データ
http://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-N03.html

にあります。
このレイヤは、Geometry: Polygonからポリゴンデータであることが分かります。
また、Extent: (136.069482, 20.425119) - (153.986900, 35.898424)は座標で緯度経度を表し、レイヤの範囲が分かります。

これをもとに、マップファイルを作成します。

MAP
 NAME tokyo_shp_map #任意の名前
 STATUS ON
 SIZE 600 300
 EXTENT 136.069482 20.425119 153.986900 35.898424 #ogrinfoで得た情報から
 UNITS DD
 SHAPEPATH "../mapdata"
 IMAGECOLOR 255 255 255

 WEB
  IMAGEPATH "/home/user/mapsite/ms_tmp/"
  IMAGEURL "/mapsite/ms_tmp/"
 END

 LAYER
  NAME gyoseikai #任意の名前
  TYPE POLYGON #ogrinfoで得た情報から
  STATUS ON
  DATA "tokyo/N03-13_13_130401.shp" #シェイプファイルの相対位置
  CLASS
   NAME "City Boundaries" #任意の名前
   STYLE
    OUTLINECOLOR 153 153 153 #面の外周の色(灰色)
   END
  END
 END
END #MAP END

shp2imgで地図を確認します。

~/mapfile$shp2img -m tokyo_shp.map -o tokyo_shp.png

画像ビューワで確認すると、範囲が広すぎるのが分かります。
今回は、諸島部分を除いた範囲にします。

---
EXTENT 138.85 35.4 140 35.975
---

全体は次の様になります。

MAP
 NAME tokyo_shp_map
 STATUS ON
 SIZE 600 300
 EXTENT 138.85 35.4 140 35.975
 UNITS DD
 SHAPEPATH "../mapdata"
 IMAGECOLOR 255 255 255

 WEB
  IMAGEPATH "/home/user/mapsite/ms_tmp/"
  IMAGEURL "/mapsite/ms_tmp/"
 END

 LAYER
  NAME gyoseikai
  TYPE POLYGON
  STATUS ON
  DATA "tokyo/N03-13_13_130401.shp"
  CLASS
   NAME "City Boundaries"
   STYLE
    OUTLINECOLOR 153 153 153
   END
  END
 END
END #MAP END

shp2imgで地図を確認します。

~/mapfile$shp2img -m tokyo_shp.map -o tokyo_shp.png




Web ブラウザのアドレスバーに次のように入力して Enter キーを押します。

http://localhost/cgi-bin/mapserv?mode=browse&template=openlayers&layer=gyoseikai&map=/home/user/mapfile/tokyo_shp.map

0 件のコメント: