Skip to content

Evercoder/d3-color-difference

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

d3-color-difference

See this Observable notebook for a demonstration.

Installing

$ npm install d3-color-difference

API Reference

Euclidean Distances

# d3.differenceEuclideanRGB(a, b) <>

Computes the Euclidean distance between the colors a and b in the RGB color space.

# d3.differenceEuclideanLab(a, b) <>

Computes the Euclidean distance between the colors a and b in the Lab color space.

# d3.differenceEuclideanHcl(a, b) <>

Computes the Euclidean distance between the colors a and b in the HCL color space.

# d3.differenceEuclideanHsl(a, b) <>

Computes the Euclidean distance between the colors a and b in the HSL color space.

# d3.differenceEuclideanCubehelix(a, b) <>

Computes the Euclidean distance between the colors a and b in the Cubehelix color space.

CIE Delta-E

# d3.differenceCie76(a, b) <>

Computes the CIE76 ΔE*ab color difference between the colors a and b. The computation is done in the Lab color space and it is analogous to differenceEuclideanLab.

# d3.differenceCie94(a, b) <>

Computes the CIE94 ΔE*94 color difference between the colors a and b. The computation is done in the Lab color space, with the default weights kL = 1, K1 = 0.045, and K2 = 0.015.

# d3.differenceCie94Weighted(kL, K1, K2) <>

Returns a CIE94 difference function with custom weighting parameters.

# d3.differenceCiede2000(a, b) <>

Computes the CIEDE2000 ΔE*00 color difference between the colors a and b as implemented by G. Sharma. The computation is done in the Lab color space, with the default weights kL = kC = kH = 1.

# d3.differenceCiede2000Weighted(kL, kC, kH) <>

Returns a CIEDE2000 difference function with custom weighting parameters.

# d3.differenceCmc(a, b) <>

Computes the CMC l:c (1984) ΔE*CMC color difference between the colors a and b. The computation is done in the Lab color space with the default weights l = c = 1.

Note: ΔE*CMC is not considered a metric since it's not symmetrical, i.e. the distance from a to b is not always equal to the distance from b to a.

# d3.differenceCmcWeighted(l, c) <>

Returns a CMC l:c (1984) difference function with custom weighting parameters.

# d3.differenceDin99o(a, b) <>

Computes the DIN99o ΔE*99o color difference between the colors a and b. The computation is done in the DIN99o color space with the default weights kCH = kE = 1.

# d3.differenceDin99oWeighted(kCH, kE) <>

Returns a DIN99o difference function with custom weighting parameters.

Opacity

# d3.differenceWithOpacity(differenceFunction, a, b) <>

The difference functions don't take the colors' alpha channel into account when computing distances. This method allows you to factor the colors' opacities into the distance.

Releases

No releases published

Packages

No packages published