公共施設のデータを使って、Point表示の色や大きさ変更します。
クライアント側(OpenLayers など)で設定する方法は難しいので、サーバ側(MapServer や GeoServer)で設定します。
国土数値情報の公共施設の説明から、大分類コードしたがってデータをレイヤ別に表示します。
公共施設大分類コード 〈ファイル名称:PubFacMaclassCd〉
コード 対応する内容 3 建物 9 その他 11 国の機関 12 地方公共団体 13 厚生機関 14 警察機関 15 消防署 16 学校 17 病院 18 郵便局 19 福祉施設
CLASS NAME COLOR OUTLINECOLOR building 153 255 153 51 255 51 national_office 153 153 255 51 51 255 local_office 255 153 153 255 51 51 welfare 255 255 153 255 255 51 police 153 255 255 51 255 255 fire_station 255 153 255 255 51 255 school 51 255 51 00 255 00 hospital 255 153 51 255 102 00 post 255 00 00 255 00 00 benefits 255 255 00 255 153 51 other 153 153 153 153 153 153
シェイプファイルの情報を見てみます。
user@debian7-vmw:~/ダウンロード/nlni/public_facilities$ $ ogrinf-summary tokyo_pf P02-06_13-g_PublicFacility
INFO: Open of `tokyo_pf'
using driver `ESRI Shapefile' successful.
Layer name: P02-06_13-g_PublicFacility
Geometry: Point
Feature Count: 14414
Extent: (139.015694, 26.640098) - (142.203778, 35.841866)
Layer SRS WKT:
(unknown)
P02_001: String (5.0)
P02_002: String (2.0)
P02_003: String (5.0)
P02_004: String (84.0)
P02_005: String (70.0)
P02_006: String (1.0)
P02_007: String (12.0)
情報の詳細を表示してみます。(ctrl + c キーで途中で止めます。)
user@debian7-vmw:~/ダウンロード/nlni/public_facilities$ ogrinfo tokyo_pf P02-06_13-g_PublicFacility
INFO: Open of `tokyo_pf'
using driver `ESRI Shapefile' successful.
Layer name: P02-06_13-g_PublicFacility
Geometry: Point
Feature Count: 14414
Extent: (139.015694, 26.640098) - (142.203778, 35.841866)
Layer SRS WKT:
(unknown)
P02_001: String (5.0)
P02_002: String (2.0)
P02_003: String (5.0)
P02_004: String (84.0)
P02_005: String (70.0)
P02_006: String (1.0)
P02_007: String (12.0)
OGRFeature(P02-06_13-g_PublicFacility):0
P02_001 (String) = 13101
P02_002 (String) = 3
P02_003 (String) = 03001
P02_004 (String) = ニューオータニ美術館
P02_005 (String) = 紀尾井町4-1
P02_006 (String) = 4
P02_007 (String) = 数値地図画像
POINT (139.734103 35.681014)
OGRFeature(P02-06_13-g_PublicFacility):1
P02_001 (String) = 13101
P02_002 (String) = 3
P02_003 (String) = 03001
P02_004 (String) = 宮内庁三の丸尚蔵館
P02_005 (String) = 千代田1-1
P02_006 (String) = 1
P02_007 (String) = 数値地図画像
POINT (139.754098 35.683808)
---
大分類は「P02_002」です。
nippon_nlni_tokyo_pgis.map の公共施設 tokyo_pf レイヤを変更します。
---
LAYER
NAME tokyo_pf
GROUP tokyo_pf
TYPE POINT
STATUS ON
CONNECTIONTYPE POSTGIS
CONNECTION "dbname=nippon_nlni host=localhost user=user password=password"
DATA "the_geom from tokyo_pf"
# MINSCALEDENOM 500 # <-1
# MAXSCALEDENOM 10000
# LABELITEM "p02_004" # <-2
CLASSITEM "p02_002" # <-3
# PROJECTION
# "init=epsg:2451"
# "init=epsg:4326"
# END
METADATA
"wms_title" "Tokyo Public Facilities Map WMS Layer"
"wms_srs" "EPSG:2451 EPSG:4326"
"wfs_title" "Tokyo Public Facilities Map WFS Layer"
"wfs_srs" "EPSG:4326"
"gml_featureid" "gid"
"gml_include_items" "all"
END
CLASS
# NAME "公共施設"
# STYLE
# COLOR 0 255 0
# SYMBOL 'circle'
# SIZE 5
# END
END
CLASS
NAME "building"
EXPRESSION ([p02_002] = 3) # <-4
STYLE
COLOR 153 255 153 # <-5
OUTLINECOLOR 51 255 51 # <-5
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "national_office"
EXPRESSION ([p02_002] = 11)
STYLE
COLOR 153 153 255
OUTLINECOLOR 51 51 255
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "local_office"
EXPRESSION ([p02_002] = 12)
STYLE
COLOR 255 153 153
OUTLINECOLOR 255 51 51
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "welfare"
EXPRESSION ([p02_002] = 13)
STYLE
COLOR 255 255 153
OUTLINECOLOR 255 255 51
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "police"
EXPRESSION ([p02_002] = 14)
STYLE
COLOR 153 255 255
OUTLINECOLOR 51 255 255
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "fire_station"
EXPRESSION ([p02_002] = 15)
STYLE
COLOR 255 153 255
OUTLINECOLOR 255 51 255
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "school"
EXPRESSION ([p02_002] = 16)
STYLE
COLOR 51 255 51
OUTLINECOLOR 0 255 0
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "hospital"
EXPRESSION ([p02_002] = 17)
STYLE
COLOR 255 153 51
OUTLINECOLOR 255 102 0
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "post"
EXPRESSION ([p02_002] = 18)
STYLE
COLOR 255 0 0
OUTLINECOLOR 255 0 0
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "benefits"
EXPRESSION ([p02_002] = 19)
STYLE
COLOR 255 255 0
OUTLINECOLOR 255 153 51
SYMBOL 'circle'
SIZE 5
END
END
CLASS
NAME "other"
EXPRESSION ([p02_002] = 9)
STYLE
COLOR 153 153 153
OUTLINECOLOR 153 153 153
SYMBOL 'circle'
SIZE 5
END
# LABEL
# MINFEATURESIZE 40
# TYPE TRUETYPE
# FONT vl-gothic
# ENCODING UTF8
# SIZE 8
# POSITION uc
# END
END
END
---
1 指定していると OpenLayers で表示できないときがあります。
# MINSCALEDENOM 500
# MAXSCALEDENOM 10000
2 LABEL を表示しないのでコメントアウト
3 CLASSを使うときのフィールドの属性値の指定
4 描画する条件値(式)
5 塗りつぶしと外周の色 RGB 0-255
Eclipse を起動して ol003-nippon_bmi_akiruno_pgis.html を開きます。
実行ボタン
をクリックして地図を表示します。
0 件のコメント:
コメントを投稿