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

# Evercoder/d3-color-difference

Switch branches/tags
Nothing to show

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?

## Files

Failed to load latest commit information.
Type
Name
Commit time

# 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.

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

## Releases

No releases published

## Packages 0

No packages published