101.65 パレット (palette)

パレットは、色の集合で、通常は一つ以上の段階的なグラデーションの形式で順序づけられ、pm3d 曲面やその他のグラフ要素を z の値で色付けするのに使われます。plot の z 座標か、追加のデータ列の灰色階調値が、現在のパレ ットの色に自動的に写像されます。パレットの色は、明示的な色指定でもアク セスできます (以下参照: colorspec (22.1))。 現在のパレットは、デフォルトでは描画スタイル pm3d を使用するグラフの 隣に別のカラーボックス (colorbox) として表示されます。そのカラーボッ クスは、手動で選択したり無効にしたりできます。以下参照: set colorbox (101.16)

書式:

     set palette
     set palette {
                { gray | color }
                { gamma <gamma> }
                {   rgbformulae <r>,<g>,<b>
                  | defined { ( <gray1> <color1> {, <grayN> <colorN>}... ) }
                  | file '<filename>' {datafile-modifiers}
                  | colormap <colormap-name>
                  | functions <R>,<G>,<B>
                }
                { cubehelix {start <val>} {cycles <val>} {saturation <val>} }
                { model { RGB | CMY | HSV {start <radians>} } }
                { positive | negative }
                { nops_allcF | ps_allcF }
                { maxcolors <maxcolors> }
              }

set palette は (すなわちオプションなしでは) デフォルトの値を復帰しま す。それ以外の場合、オプションは任意の順に与えることができます。

show palette は、現在のパレットの属性の一覧を表示します。

test palette は、現在のパレットをスクリーン上に表示します。

以下のオプションは、色付けの属性を決定します。

pm3d カラー曲面では、各微小四辺形の 4 つの角の z 座標の平均値を、範 囲 [min_z, max_z] から灰色階調値の範囲 (常に [0:1]) への写像で変換する ことにより、その四辺形の灰色階調値が得られます。この値は、灰色階調の色 地図での灰色階調値として直接使うことができます。パレットは、その灰色階 調値から RGB 色への写像です。

基本的に、2 種類の異なる写像方式が利用可能です: 1 つは灰色からカラーへ の解析的な公式、もう一つは離散的な対応表の補間によるものです。 palette rgbformulaepalette functions が解析的な公式用で、 palette definedpalette file が補間表用です。palette rgbformulae は postscript 出力のサイズを小さくすることができます。

set palette gray は、灰色階調のみのパレットにし、 set palette rgbformulae, set palette defined, set palette file, set palette functions はカラーパレットにします。灰色パレットから直前 のカラーパレットへ、set palette color で簡単に復帰できます。

set palette gamma <gamma> による自動的なガンマ補正は、灰色のパレット (set palette gray) と、cubehelix カラーパレット形式に行われます。 gamma = 1 の場合は、線形の光度グラデーションを生成します。以下参照:test palette (107)

限定された色数しかサポートしていない出力形式もあります (例えば gif で は 256 個)。デフォルトの gnuplot の線種色を割り当てた後の残りの有効な 色領域は、デフォルトでは pm3d 用に保存されます。よって、複数のパレット を使用するような multiplot は、最初のパレットがすべての有効な色の配置 として使用されてるので、失敗してしまうでしょう。このような制限は、十分 小さい値 N で set palette maxcolors <N> を使うことで緩和できます。こ のオプションは、N 個の離散的な色を、連続的なパレットから等間隔なサンプ リングで選択します。不等間隔な N 個の離散色を使いたい場合は、一つの連 続的なパレットの代わりに set palette defined を使用してください。

RGB 色空間が作業を行うのに常にもっとも有用な色空間であるとは限らない、 という理由で、色空間は model を使うことで、RGB, HSV, CMY のい ずれかに変更できます。RGB 以外の色空間では set palette defined の表で色名を使うと、それはおかしな色になります。全ての説明は RGB 色空間用 に書きますが、それぞれの色空間で、例えば RH, C のことを意味 することに注意してください (G, B も同様)。

全ての色空間で、全ての値は [0,1] に制限されています。

RGB は赤、緑、青を、CMY は水色 (Cyan)、紫 (Magenta)、黄 (Yellow) を、 HSV は色相 (Hue)、彩度 (Saturation)、明度 (Value) をそれぞれ意味します。 色モデルのより詳しい情報については以下を参照してください: http://en.wikipedia.org/wiki/Color_space

注意: 以前のバージョンの gnuplot では、YIQ と XYZ の色空間モデルもサポートしていましたが、その実装は完全ではないか、正しくありませんでした。



Subsections
竹野茂治@新潟工科大学
2021-06-25