ログイン

color.gs

Top / GrADS / script / color.gs

Japanese / English

名前

color - 描画の際の色テーブルを設定する。

概要

color
    (min max [int [inttype]] | -levs lev1 lev2 ... | -var var-name)
    [-div value]
    [-gxout gxout-name]
    [-kind string] [-alpha value]
    [-sample] [-xcbar [xcbar-args]]
    [-ret]
    [-verbose | -v]

説明

シェードや等値線図などを描く際に用いる色テーブルを設定する。色の名前や RGB 値、RGBA 値の組み合わせで柔軟な色設定が可能。 透過色は GrADS 2.1 以降のみ対応。 引数なしで実行するとヘルプが表示される。

引数

min max [int [inttype]]
カラーテーブルのための変数の値の最小値、最大値、間隔、間隔のタイプ。間隔省略時は GrADS の標準に準拠。inttype は "linear"(線形;デフォルト)および"fact"(倍数)を指定可能。
-levs lev1 lev2 ...
カラーテーブルのための変数の値のレベル。
-var var-name
描画する変数名。変数の範囲に合わせて自動的に等値線の最小値・最大値・間隔を決定する。
-div value
min, max が指定され int が指定されていない場合の [min:max] の分割数。デフォルトは "10"。
-gxout gxout-name
"set gxout" で設定可能な名前。デフォルトは "shaded"。
-kind string
色配列。デフォルト値は "blue->white->red"。詳細は色配列を参照。
-alpha
色の透過度。"0" が完全に透明、"255" が完全に不透明。デフォルトは "255"。
-sample
色テーブルを表示。
-xcbar xcbar-args
xcbar.gs を実行してカラーバーを描く(要xcbar.gs)。
-ret
スクリプト関数のように振る舞う。
-v | -verbose
情報表示を増やす。

色配列(-kind オプション用)

色配列とは色の順序と割合を定義する文字列である。単一の色配列名、もしくは複数の色の名前色配列名・(R,G,B)・(R,G,B,A) を "->" で接続して指定する。色の数がレベルの数に足りない場合は、線形内挿によって中間色が生成される。"->" の代わりに "-(n)->" (n: 0以上の整数) で接続することも可能であり、この場合は接続する2色の間の中間色の数が n に近づくように調整される。透明度を (R,G,B,A) の A で指定した場合、-alpha での指定に優先する。

以下に様々な例を示す。

"blue->white->red"
青〜白〜赤。
"bluered"
青〜白〜赤(上と同じ)。
"red->white->blue"
赤〜白〜青。
"purple->blue->white->red->maroon"
紫〜青〜白〜赤〜茶。
"purple->blue->(255,255,255)->red->maroon"
紫〜青〜黒〜赤〜茶。
"white->grainboe"
白〜虹色。
"white-(0)->grainboe"
白〜虹色。但し白は1レベルのみ。
(127,127,127,0)->(127,127,127,255)"
値が大きいほど灰色の不透明度が増加。

色配列名

色の配列名 対応する色の名前の並び
bluered blue->white->red
redblue red->white->blue
rainbow blue->aqua->lime->yellow->red
grainbow (GrADS default rainbow)
revgrainbow (GrADS default rainbow, reversed)

色の名前


black
navy
darkblue
mediumblue
blue

darkgreen
green
teal
darkcyan
deepskyblue

darkturquoise
mediumspringgreen
lime
springgreen
aqua

cyan
midnightblue
dodgerblue
lightseagreen
forestgreen

seagreen
darkslategray
limegreen
mediumseagreen
turquoise

royalblue
steelblue
darkslateblue
mediumturquoise
indigo

darkolivegreen
cadetblue
cornflowerblue
mediumaquamarine
dimgray

slateblue
olivedrab
slategray
lightslategray
mediumslateblue

lawngreen
chartreuse
aquamarine
maroon
purple

olive
gray
skyblue
lightskyblue
blueviolet

darkred
darkmagenta
saddlebrown
darkseagreen
lightgreen

mediumpurple
darkviolet
palegreen
darkorchid
yellowgreen

sienna
brown
darkgray
lightblue
greenyellow

paleturquoise
lightsteelblue
powderblue
firebrick
darkgoldenrod

mediumorchid
rosybrown
darkkhaki
silver
mediumvioletred

indianred
peru
chocolate
tan
lightgray

thistle
orchid
goldenrod
palevioletred
crimson

gainsboro
plum
burlywood
lightcyan
lavender

darksalmon
violet
palegoldenrod
lightcoral
khaki

aliceblue
honeydew
azure
sandybrown
wheat

beige
whitesmoke
mintcream
ghostwhite
salmon

antiquewhite
linen
lightgoldenrodyellow
oldlace
red

fuchsia
magenta
deeppink
orangered
tomato

hotpink
coral
darkorange
lightsalmon
orange

lightpink
pink
gold
peachpuff
navajowhite

moccasin
bisque
mistyrose
blanchedalmond
papayawhip

lavenderblush
seashell
cornsilk
lemonchiffon
floralwhite

snow
yellow
lightyellow
ivory
white

使用例

(1) 230〜310の範囲、10きざみでデフォルト色「青→白→赤」を用いてtを描く。

ga-> open t.ctl
ga-> color 230 310 10
ga-> d t
ga-> cbar

(2) -50〜50の範囲で「ライム→白→赤」を指定して 10hPa の u を描く。

ga-> open u.ctl
ga-> set lev 10
ga-> color -50 50 -kind lime->white->red
ga-> d u
ga-> cbar

(3) 0〜5000、500間隔で「茶→赤→白→青→紫」のコンターを描く。

ga-> open hgs.ctl
ga-> set gxout contour
ga-> color -gxout contour 0 5000 500 -kind purple->blue->white->red->maroon
ga-> d hgs

(4) 0〜5000 を20分割して「(R,G,B)=(100,100,100)→(100,150,0)→(200,50,150)」のシェードで hgs を描く。

ga-> open hgs.ctl
ga-> color 0 5000 -div 20 -kind (100,100,100)->(100,150,0)->(200,50,150)
ga-> d hgs
ga-> cbarn

(5) 虹色シェードで 500hPa の t を描く。ただし max, min, int は変数の値から自動的に決定する。

ga-> open t.ctl
ga-> set lev 500
ga-> color -var t -kind rainbow
ga-> d t
ga-> cbar

(6) 100, 200, 500, 1000, 2000, 5000 の hgs コンターのみを虹色で描く。

ga-> open hgs.ctl
ga-> set lon 60 120
ga-> set lat 0 60
ga-> color -gxout contour -levs 100 200 500 1000 2000 5000
ga-> d hgs

(7) 「赤→白」のカラーサンプルを表示する

ga-> color 1 10 -kind red->white -sample

(8) xcbar.gs を利用して「赤→白」のカラーサンプルを表示する

ga-> color 1 10 -kind red->white -xcbar 1 10 0.5 0.7 -edge triangle -line on

(9) 「白→虹色」のカラーサンプルを表示する

ga-> color 1 30 1 -kind white->grainbow -sample

(10) 「白→虹色」のカラーサンプルを表示する。但し白は1レベルのみ使用する。

ga-> color 1 30 1 -kind white-(0)->grainbow -sample

(11) シェードの 500hPa t に、灰色の透過色で 500hPa u を描画する。

ga-> open t.ctl
ga-> open u.ctl
ga-> set lev 500
ga-> d t
ga-> color -kind (127,127,127,196)->(127,127,127,0)->(127,127,127,196)
ga-> d u

ソースコード