人口を円積図で表します。人口によって円の大きさを変えて表示します。
マップファイルに描画する図の設定(SYMBOL)と population レイヤを追加します。
SYMBOL はレイヤの前に追加します。
LABEL を表示しないと STYLE で設定した circle が表示されませんでした。
--- SYMBOL NAME 'circle' TYPE ELLIPSE FILLED TRUE POINTS 1 1 END END ---ellipse: radius values in the x and y directions define an ellipse.
xとy方向の半径の値は、楕円を定義します。
(http://mapserver.org/el/mapfile/symbol.html)
FILLED [true|false]: If true, the symbol will be filled with a user defined color (using STYLE COLOR). Default is false.
true の場合、シンボルはユーザ定義された色(STYLE COLOR を使用して)で満たされます。デフォルトは false です。
(http://mapserver.org/el/mapfile/symbol.html)
POINTS [x y] [x y] ... END: Signifies the start of a sequence of points that make up a symbol of TYPE vector or that define the x and y radius of a symbol of TYPE ellipse. The end of this section is signified with the keyword END. The x and y values can be given using decimal numbers. The maximum x and y values define the bounding box of the symbol. The size (actually height) of a symbol is defined in the STYLE. You can create non-contiguous paths by inserting “-99 -99” at the appropriate places.
x values increase to the right, y values increase downwards.
TYPE vector のシンボルを構成する、または、TYPE ellipse(楕円)のシンボルのxとyの半径を定義する点のシーケンスの開始を意味します。このセクションの最後は、キーワード END で意味されます。 xとyの値は10進数を使用して与えます。xとyの最大値は、シンボルの境界ボックスを定義します。シンボルのサイズ(実際には高さ)STYLE 内で定義されます。適切な場所に 「-99 -99」を挿入して、非連続的なパスを作成することができます。
x値は右方向に増加し、yの値は下方へ増加します。
(http://mapserver.org/el/mapfile/symbol.html)
--- 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不透明 LABELITEM "pop_est" #LABELを使うときのフィールドの属性値の指定 CLASSITEM "pop_est" #CLASSを使うときのフィールドの属性値の指定
CLASS NAME "over 1billion" #凡例のタイトルになります EXPRESSION ([pop_est] >= 1000000000) #描画する条件値(式) LABEL SIZE tiny #文字の大きさ # MINFEATURESIZE 300 #フィーチャがラベルを表示する最小サイズ COLOR 255 102 102 OUTLINECOLOR 102 51 51 POSITION ul #文字の位置:upper-left 中心の上左 STYLE #表示されるものの外観を定義 SYMBOL 'circle' #定義した'circle'を使用 COLOR 255 0 0 #'circle'の塗りつぶしの色 SIZE 20 #'circle'の大きさ END END STYLE OUTLINECOLOR 153 0 0 END END
CLASS NAME "100million to 1billion" EXPRESSION ([pop_est] <= 1000000000 AND [pop_est] >= 100000000) LABEL SIZE tiny MINFEATURESIZE 100 COLOR 255 102 102 OUTLINECOLOR 102 51 51 POSITION ul STYLE SYMBOL 'circle' COLOR 255 0 0 SIZE 10 END END STYLE OUTLINECOLOR 153 0 0 END END
CLASS NAME "10 to 100million" EXPRESSION ([pop_est] <= 100000000 AND [pop_est] >= 10000000) LABEL SIZE tiny MINFEATURESIZE 100 COLOR 255 102 102 OUTLINECOLOR 102 51 51 POSITION ul STYLE SYMBOL 'circle' COLOR 255 0 0 SIZE 5 END END STYLE OUTLINECOLOR 153 0 0 END END
CLASS NAME "under 10million" EXPRESSION ([pop_est] <= 10000000) LABEL SIZE tiny MINFEATURESIZE 200 COLOR 255 102 102 OUTLINECOLOR 102 51 51 POSITION ul STYLE SYMBOL 'circle' COLOR 255 0 0 SIZE 5 END END STYLE OUTLINECOLOR 153 0 0 END END END
# LAYER # NAME country-boundary # TYPE POLYGON #面表示になります # STATUS ON #初期状態 ON:表示 OFF:非表示 # DATA "110m_cultural/ne_110m_admin_0_countries.shp" # CLASS # NAME 'Country Boundary' # STYLE # OUTLINECOLOR 153 0 0 # END # END # END END # MAPWebブラウザのアドレスバーに次のように入力して Enter キーを押します。
http://localhost/cgi-bin/mapserv?mode=browse&template=openlayers&layer=global-laster&layer=population&map=/home/user/mapfile/global.map
TYPE annotation has been deprecated since version 6.2. Identical functionality can be obtained by adding LABEL level STYLE blocks, and do not require loading the datasets twice in two different layers as was the case with layers of TYPE annotation.
TYPE annotation は、バージョン 6.2 以降推奨されていません。同じ機能は、LABEL レベル STYLE ブロックを追加することによって得ることができ、TYPE annotation のレイヤを有する場合のように、2つの異なるレイヤに2回データセットをロードする必要がありません。
(http://mapserver.org/el/mapfile/layer.html)