2015年5月26日火曜日

9 グラフィカルなデータ表示 2 - 色分け

9-2 階級区分の色分け
シェイプファイルの属性を使って、グラフィカルなデータ表示をします。
人口を階級区分して色分けします。
マップファイルの global-raster レイヤの後に、新しい population レイヤを追加します。
country-boundary レイヤは削除します。
MAP
 NAME "global_map"
 STATUS ON
 SIZE 600 300
 EXTENT -180 -90 180 90
 UNITS DD
 SHAPEPATH "../mapdata"
 IMAGECOLOR 255 255 255

 #
 # Start of web interface definition
 #
 WEB
  IMAGEPATH "/home/user/public_html/ms_tmp/"
  IMAGEURL "/public_html/ms_tmp/"
 END # WEB
 #
 # Start of layer definitions
 #
 LAYER
  NAME global-raster
  TYPE RASTER
  STATUS DEFAULT
  DATA "land_ocean_ice_2048.jpg"
 END
 LAYER
  NAME population
  TYPE POLYGON
  STATUS ON
  DATA "110m_cultural/ne_110m_admin_0_countries.shp"
  OPACITY 50 #透過度 0完全透明 100不透明
  CLASSITEM "pop_est" #CLASSを使うときのフィールドの属性値の指定
  CLASS
   NAME "over 1billion" #凡例のタイトルになります
   EXPRESSION ([pop_est] >= 1000000000) #描画する条件値(式)
   STYLE
    COLOR 255 0 0 #塗りつぶし色 RGB 0-255
    OUTLINECOLOR 153 0 0
   END
  END
  CLASS
   NAME "100million to 1billion"
   EXPRESSION ([pop_est] <= 1000000000 AND [pop_est] >= 100000000)
   STYLE
    COLOR 255 102 102
    OUTLINECOLOR 153 0 0
   END
  END
  CLASS
   NAME "10 to 100million"
   EXPRESSION ([pop_est] <= 100000000 AND [pop_est] >= 10000000)
   STYLE
    COLOR 255 204 204
    OUTLINECOLOR 153 0 0
   END
  END
  CLASS
   NAME "under 10million"
   EXPRESSION ([pop_est] <= 10000000)
   STYLE
    OUTLINECOLOR 153 0 0
   END
  END
 END
# LAYER
#  NAME country-boundary
#  TYPE POLYGON
#  STATUS ON
#  DATA "110m_cultural/ne_110m_admin_0_countries.shp"
#  CLASS
#   NAME 'Country Boundary'
#   STYLE
#    OUTLINECOLOR 153 0 0
#   END
#  END
# END

END # MAP

OPACITY: Sets the opacity level (or the inability to see through the layer) of all classed pixels for a given layer. A value of 100 is opaque and 0 is fully transparent.
Deprecated since version 7.0: Use a COMPOSITE block instead.
特定のレイヤのすべての分類された画素の不透明度(またはレイヤを通して見ることができない)を設定します。 100の値は不透明であり、0は完全に透明です。
(http://mapserver.org/el/mapfile/composite.html#composite)
バージョン7.0で撤廃:代わりに、COMPOSITE を使用してください。
(http://mapserver.org/el/mapfile/layer.html)

CLASSITEM [attribute]: Item name in attribute table to use for class lookups.
クラス検索に使用する属性テーブルの項目名。
(http://mapserver.org/el/mapfile/layer.html)

EXPRESSION: A classification for the items matched above would be done by setting the CLASSITEM in the LAYER and the EXPRESSION in the CLASS.
上記一致した項目の分類は、LAYER 内の CLASSITEM と CLASS で EXPRESSION を設定することで実行されます。
(http://mapserver.org/el/mapfile/expressions.html)


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

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


0 件のコメント: