Skip to content

Evercoder/d3-color-difference

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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.

About

🌈 Color differences for D3: Euclidean distance, CIE94, CIEDE2000, CMC, DIN99o

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published