color namer
v1.4.0
色を教えてください。名前を付けます。
Color Namer は、Node.js またはブラウザーで使用する npm パッケージで、Delta-E 色差技術を使用して色の距離を計算します。 16 進数の RGB、RGBA、HSL、または HSV 形式で色を指定すると、その色を L a b* 色空間に変換し、既知の名前を持つ色のセットから色のユークリッド距離を計算します。
D3 で有名なマイク・ボストック氏は次のように説明しています。
Lab および HCL 色空間は、2 つの色の知覚される違いが色空間内のユークリッド距離に比例するという点で特殊です。知覚的均一性と呼ばれるこの特別な特性により、データの正確な視覚的エンコードに最適になります。対照的に、より一般的な RGB および HSL 色空間は、視覚化に使用するとデータが歪みます。
色の名前はいくつかのリストから得られます。
npm install color-namer --save
モジュールが必要です:
var namer = require ( 'color-namer' )
var names = namer ( "#FF0000" )
上記のコードから、 names
は各リストのキーが含まれます。
names.roygbiv
names.basic
names.html
names.x11
names.pantone
names.ntc
各リストは色の配列であり、指定された色との知覚的な類似性によって並べ替えられています。
[
{ name : 'red' ,
hex : '#FF0000' ,
distance : 0
} , {
name : 'orangered' ,
hex : '#FF4500' ,
distance : 13.170205025755513
} , {
name : 'tomato' ,
hex : '#FF6347' ,
distance : 31.733444038510665
} , {
name : 'crimson' ,
hex : '#DC143C' ,
distance : 35.38084849496472
} , {
name : 'firebrick' ,
hex : '#B22222' ,
distance : 40.71076805218006
} , {
name : 'coral' ,
hex : '#FF7F50' ,
distance : 42.340752375722616
} , {
name : 'chocolate' ,
hex : '#D2691E' ,
distance : 44.378454180212145
}
]
他の入力形式も HSL、RGB、RGBA と同様に機能します。
name ( "hsl(50,100%,50%)" )
name ( "rgb(255,0,0)" )
name ( "rgba(255,0,0,1)" )
このオプションを使用すると、専用のリストから名前を取得して計算を高速化できます。
var names = namer ( color , { pick : [ 'basic' , 'x11' ] } )
// output: { basic: [...], x11: [...] }
options.pick
の逆。
var names = namer ( color , { omit : [ 'pantone' , 'roygbiv' ] } )
// output: { basic: [...], html: [...], x11: [...], ntc: [...] }
「deltaE」の場合は Delta-E 距離関数を使用し、それ以外の場合はデフォルトの距離関数を使用します。
var names = namer ( color , { pick : [ 'basic' ] , distance : 'deltaE' } ) ;
// output: { basic: [...] }
npm install
npm test
マサチューセッツ工科大学