Curated palette · Scales

Sequential and diverging Palettes for maps and heatmaps

Seven palettes for data with an order, and two well-known ones to avoid. Each is measured here with this site's color engine: whether its lightness climbs evenly, whether it keeps its order in grayscale, and whether its steps and its two sides can still be told apart with color vision deficiency.

Sequential
5
Diverging
4
Recommended
7/9
Stops each
9
Visions checked
5

Live heatmap

One map, nine palettes

Hours of daylight by latitude and month, in nine classes. Choose a palette and a type of color vision; every cell keeps its number, so color is never the only cue.

The controls need JavaScript. Without it the map shows viridis, as typical vision sees it.

Palette
viridis Sequential
Closest neighboring classes
ΔE 10.70 Distinct
Verdict
Use it

Hours of daylight

  1. 5.25–6.75
  2. 6.75–8.25
  3. 8.25–9.75
  4. 9.75–11.25
  5. 11.25–12.75
  6. 12.75–14.25
  7. 14.25–15.75
  8. 15.75–17.25
  9. 17.25–18.75

Shorter daysAbout 12 hours, day as long as nightLonger days

Hours of daylight on the 15th of each month, by latitude

LatitudeJanFebMarAprMayJunJulAugSepOctNovDec
60°N6.38.811.314.216.818.417.715.412.59.77.15.6
45°N8.910.211.613.314.715.415.113.912.310.79.38.6
30°N10.311.011.812.713.513.913.813.112.211.310.510.1
15°N11.211.511.912.312.712.912.812.512.111.711.311.1
0°12.012.012.012.012.012.012.012.012.012.012.012.0
15°S12.812.512.111.711.311.111.211.511.912.312.712.9
30°S13.713.012.211.310.510.110.210.911.812.713.513.9
45°S15.113.812.410.79.38.68.910.111.713.314.715.4
60°S17.715.212.79.87.25.66.38.611.514.316.918.4

Day length works with both kinds of palette. Read as a quantity, from short days to long ones, it is sequential. Read against 12 hours, when day and night are equal, it is diverging: the middle class holds the equator all year, and every latitude in March and September.

The hours are computed, not measured: sunrise to sunset at the center of the sun, with Cooper's 1969 formula for the sun's declination and no atmospheric refraction, so real days run a few minutes longer. The classes are 1.5 hours wide and centered on 12 hours, so every palette colors the same cells the same class.

Measured

Each palette, measured

Lightness says whether a palette shows order; CIEDE2000 under simulation says whether its steps, and its two sides, can still be told apart. The verdict follows from the checks: a sequential palette must rise in lightness and keep that order in grayscale, a diverging one must keep its sides at least noticeably apart under every color vision.

Sequential

PaletteLightness, low to highEven stepsIn grayscaleClosest neighborsVerdict
viridis
0.285 → 0.918
Rises at every step
0.82Order kept4.55 Protanopia, stops 8 and 9Use it
cividis
0.259 → 0.921
Rises at every step
0.84Order kept6.83 Tritanopia, stops 8 and 9Use it
Blues
0.986 → 0.322
Rises at every step
0.44Order kept3.53 Achromatopsia, stops 1 and 2Use it
YlGnBu
0.990 → 0.260
Rises at every step
0.27Order kept2.44 Achromatopsia, stops 1 and 2Use it
jet
0.271 → 0.377
Turns back after stop 6
0.00Order lost0.22 Achromatopsia, stops 4 and 5Avoid

Diverging

PaletteLightness, end · middle · endBalanceTwo sides apartClosest neighborsVerdict
RdBu
0.492 · 0.976 · 0.505
Lightest in the middle
0.01316.47 Protanopia, stops 4 and 64.45 Achromatopsia, stops 5 and 6Use it
PuOr
0.562 · 0.976 · 0.389
Lightest in the middle
0.17220.12 Tritanopia, stops 4 and 64.01 Achromatopsia, stops 4 and 5Use it
BrBG
0.493 · 0.970 · 0.459
Lightest in the middle
0.03413.17 Protanopia, stops 4 and 62.52 Achromatopsia, stops 4 and 5Use it
RdYlGn
0.575 · 0.985 · 0.598
Lightest in the middle
0.0300.52 Deuteranopia, stops 4 and 64.60 Achromatopsia, stops 5 and 6Avoid
  • Lightness is OKLCH L, from 0 for black to 1 for white. A sequential palette should rise at every step; a diverging one should be lightest in the middle and darken toward both ends.
  • Even steps is the smallest step in lightness divided by the largest. At 1.00, equal steps in the data look equal.
  • Closest neighbors is the smallest CIEDE2000 difference between two neighboring stops, under any of the five simulations, grayscale included. Under 5 they read as a close match.
  • Balance is the largest difference in lightness between a stop and its mirror across the middle. Near 0, equal distances above and below the middle carry equal weight.
  • Two sides apart is the smallest CIEDE2000 difference between a stop and its mirror, under typical vision and the three dichromacies. Grayscale is left out: a diverging palette's two sides are equally light by design, so no diverging palette can show its side in gray.

Color vision

As each color vision sees them

Each palette under typical vision, the three dichromacies at full severity, and in grayscale. A sequential palette should still run from one end to the other; a diverging one should still show two sides.

  • viridis Sequential
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • cividis Sequential
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • Blues Sequential
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • YlGnBu Sequential
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • jet Sequential
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • RdBu Diverging
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • PuOr Diverging
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • BrBG Diverging
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia
  • RdYlGn Diverging
    • Typical vision
    • Protanopia
    • Deuteranopia
    • Tritanopia
    • Achromatopsia

The simulation is the model of Machado, Oliveira and Fernandes (2009) at full severity, the one this site's simulator uses; achromatopsia is shown as luminance only, which is also how the palette prints in black and white. A simulation approximates how colors collapse; it does not reproduce anyone's vision.

Use it well

Which one, and why

First decide what kind of data you have; then pick from that kind. Every reason below is a measurement from this page.

  • Sequential when the data runs from low to high and low is not special: counts, rates, hours of daylight. Lightness carries the order, so it must rise at every step.
  • Diverging when the data has a meaningful middle and runs away from it both ways: change from last year, anomalies, correlation, days longer or shorter than nights. Hue carries the side; lightness carries the distance from the middle.
  • Neither when the data has no order at all, such as categories: use the chart palettes instead.
  • viridis

    SequentialUse it

    Use it for The default for a quantity on screen: heat maps, density, any value from low to high. Lightness climbs in near-even steps (0.82), so equal differences in the data look about equal, and it keeps its order in grayscale.

    Watch for Its stops 8 and 9, green-yellow to yellow, come within ΔE 4.55 under protanopia. Label the top of the legend.

  • cividis

    SequentialUse it

    Use it for When readers with color vision deficiency are a main audience: it was designed for them. Every neighboring step stays at ΔE 6.83 or more under all five simulations, the only palette here that does.

    Watch for It runs from blue to yellow only, so it is quieter than viridis. Its lightness steps are the most even here (0.84).

  • Blues

    SequentialUse it

    Use it for A map of one quantity in a few classes: rates, shares, density by region. A single hue keeps the message simple: darker means more.

    Watch for Its lightest stop is 1.03:1 against white, so a white page swallows it: outline every region. In grayscale its stops 1 and 2 come within ΔE 3.53.

  • YlGnBu

    SequentialUse it

    Use it for More classes than one hue can separate: hue changes with lightness, so neighboring classes are at least ΔE 8.19 apart in typical vision, against 5.09 for Blues.

    Watch for Its pale end bunches: stops 1 and 2 are ΔE 2.44 apart in grayscale and 3.18 under tritanopia. Label the low end of the legend.

  • jet

    SequentialAvoid

    Why to avoid it Lightness rises to stop 6 and falls again, so the brightest band, cyan to yellow, looks like a feature of the data wherever it lands. In grayscale, stops 4 and 5 are the same gray (ΔE 0.22) and the order is lost.

    Use instead viridis, which spans the same range of lightness without turning back.

  • RdBu

    DivergingUse it

    Use it for Data with a meaningful middle: change from a baseline, anomalies, correlation from −1 to 1. Its two sides are balanced in lightness (within 0.013) and stay at least ΔE 16.47 apart under every color vision.

    Watch for In grayscale the two sides meet, never more than ΔE 3.65 apart: print the values, or a legend with signs.

  • PuOr

    DivergingUse it

    Use it for A diverging palette with no red and no green, and none of red's sense of alarm. Its two sides stay at least ΔE 20.12 apart under every color vision.

    Watch for Its purple side is darker than its orange side, by 0.172 in lightness at the ends, so high values look weightier than low ones. If both directions matter equally, use RdBu.

  • BrBG

    DivergingUse it

    Use it for Two directions with an earthy feel: wetter or drier, vegetation gained or lost. Balanced within 0.034.

    Watch for Under protanopia, stops 5 and 6 come within ΔE 3.23. Label the classes nearest the middle.

  • RdYlGn

    DivergingAvoid

    Why to avoid it Under deuteranopia, the most common color vision deficiency, its two sides meet: the stops beside the middle are ΔE 0.52 apart, and even its two ends only 9.57. A reader cannot tell above the middle from below it.

    Use instead RdBu or PuOr, whose sides stay apart under every color vision.

In code

Already in your charting library

All seven ship with matplotlib and with d3. The calls below give exactly the nine stops measured here; for the three diverging palettes in matplotlib, pass the stops yourself.

Each recommended palette in matplotlib and d3
Palettematplotlibd3Note
viridiscolormaps["viridis"].resampled(9)d3.quantize(d3.interpolateViridis, 9)Both give exactly these nine.
cividiscolormaps["cividis"].resampled(9)d3.quantize(d3.interpolateCividis, 9)d3's cividis is a polynomial fit, up to 13 of 255 away in one channel; matplotlib's is exact.
Bluescolormaps["Blues"].resampled(9)d3.schemeBlues[9]Both give exactly these nine.
YlGnBucolormaps["YlGnBu"].resampled(9)d3.schemeYlGnBu[9]Both give exactly these nine.
RdBuListedColormap(stops)d3.schemeRdBu[9]matplotlib's own RdBu runs through ColorBrewer's 11 classes: these nine and a darker stop at each end.
PuOrListedColormap(stops)d3.schemePuOr[9].slice().reverse()d3 lists PuOr from the purple end, so reverse it to match ColorBrewer and this page.
BrBGListedColormap(stops)d3.schemeBrBG[9]matplotlib's own BrBG runs through the 11 classes, as RdBu does.

In matplotlib, colormaps and ListedColormap come from matplotlib and matplotlib.colors; stops is the palette's list from the JSON export below. Every name was run against matplotlib 3.10.8 and d3-scale-chromatic 3.1.0 before publishing.

Code

Export the palettes

The seven recommended palettes as tokens: scale-viridis-1 to 9, and so on, low to high.

Copy a format and rename the tokens to fit your system.

CSS custom properties

/* Generated by Auric Artisan sequential and diverging palettes on 2026-10-14 */
:root {
  --scale-viridis-1: #440154; /* viridis, sequential, stop 1 of 9 (lowest) */
  --scale-viridis-2: #472D7B; /* viridis, sequential, stop 2 of 9 */
  --scale-viridis-3: #3B528B; /* viridis, sequential, stop 3 of 9 */
  --scale-viridis-4: #2C728E; /* viridis, sequential, stop 4 of 9 */
  --scale-viridis-5: #21918C; /* viridis, sequential, stop 5 of 9 */
  --scale-viridis-6: #28AE80; /* viridis, sequential, stop 6 of 9 */
  --scale-viridis-7: #5EC962; /* viridis, sequential, stop 7 of 9 */
  --scale-viridis-8: #ADDC30; /* viridis, sequential, stop 8 of 9 */
  --scale-viridis-9: #FDE725; /* viridis, sequential, stop 9 of 9 (highest) */
  --scale-cividis-1: #00224E; /* cividis, sequential, stop 1 of 9 (lowest) */
  --scale-cividis-2: #1A386F; /* cividis, sequential, stop 2 of 9 */
  --scale-cividis-3: #434E6C; /* cividis, sequential, stop 3 of 9 */
  --scale-cividis-4: #61656F; /* cividis, sequential, stop 4 of 9 */
  --scale-cividis-5: #7D7C78; /* cividis, sequential, stop 5 of 9 */
  --scale-cividis-6: #9B9476; /* cividis, sequential, stop 6 of 9 */
  --scale-cividis-7: #BCAE6C; /* cividis, sequential, stop 7 of 9 */
  --scale-cividis-8: #DEC958; /* cividis, sequential, stop 8 of 9 */
  --scale-cividis-9: #FEE838; /* cividis, sequential, stop 9 of 9 (highest) */
  --scale-blues-1: #F7FBFF; /* Blues, sequential, stop 1 of 9 (lowest) */
  --scale-blues-2: #DEEBF7; /* Blues, sequential, stop 2 of 9 */
  --scale-blues-3: #C6DBEF; /* Blues, sequential, stop 3 of 9 */
  --scale-blues-4: #9ECAE1; /* Blues, sequential, stop 4 of 9 */
  --scale-blues-5: #6BAED6; /* Blues, sequential, stop 5 of 9 */
  --scale-blues-6: #4292C6; /* Blues, sequential, stop 6 of 9 */
  --scale-blues-7: #2171B5; /* Blues, sequential, stop 7 of 9 */
  --scale-blues-8: #08519C; /* Blues, sequential, stop 8 of 9 */
  --scale-blues-9: #08306B; /* Blues, sequential, stop 9 of 9 (highest) */
  --scale-ylgnbu-1: #FFFFD9; /* YlGnBu, sequential, stop 1 of 9 (lowest) */
  --scale-ylgnbu-2: #EDF8B1; /* YlGnBu, sequential, stop 2 of 9 */
  --scale-ylgnbu-3: #C7E9B4; /* YlGnBu, sequential, stop 3 of 9 */
  --scale-ylgnbu-4: #7FCDBB; /* YlGnBu, sequential, stop 4 of 9 */
  --scale-ylgnbu-5: #41B6C4; /* YlGnBu, sequential, stop 5 of 9 */
  --scale-ylgnbu-6: #1D91C0; /* YlGnBu, sequential, stop 6 of 9 */
  --scale-ylgnbu-7: #225EA8; /* YlGnBu, sequential, stop 7 of 9 */
  --scale-ylgnbu-8: #253494; /* YlGnBu, sequential, stop 8 of 9 */
  --scale-ylgnbu-9: #081D58; /* YlGnBu, sequential, stop 9 of 9 (highest) */
  --scale-rdbu-1: #B2182B; /* RdBu, diverging, stop 1 of 9 (lowest) */
  --scale-rdbu-2: #D6604D; /* RdBu, diverging, stop 2 of 9 */
  --scale-rdbu-3: #F4A582; /* RdBu, diverging, stop 3 of 9 */
  --scale-rdbu-4: #FDDBC7; /* RdBu, diverging, stop 4 of 9 */
  --scale-rdbu-5: #F7F7F7; /* RdBu, diverging, stop 5 of 9 (middle) */
  --scale-rdbu-6: #D1E5F0; /* RdBu, diverging, stop 6 of 9 */
  --scale-rdbu-7: #92C5DE; /* RdBu, diverging, stop 7 of 9 */
  --scale-rdbu-8: #4393C3; /* RdBu, diverging, stop 8 of 9 */
  --scale-rdbu-9: #2166AC; /* RdBu, diverging, stop 9 of 9 (highest) */
  --scale-puor-1: #B35806; /* PuOr, diverging, stop 1 of 9 (lowest) */
  --scale-puor-2: #E08214; /* PuOr, diverging, stop 2 of 9 */
  --scale-puor-3: #FDB863; /* PuOr, diverging, stop 3 of 9 */
  --scale-puor-4: #FEE0B6; /* PuOr, diverging, stop 4 of 9 */
  --scale-puor-5: #F7F7F7; /* PuOr, diverging, stop 5 of 9 (middle) */
  --scale-puor-6: #D8DAEB; /* PuOr, diverging, stop 6 of 9 */
  --scale-puor-7: #B2ABD2; /* PuOr, diverging, stop 7 of 9 */
  --scale-puor-8: #8073AC; /* PuOr, diverging, stop 8 of 9 */
  --scale-puor-9: #542788; /* PuOr, diverging, stop 9 of 9 (highest) */
  --scale-brbg-1: #8C510A; /* BrBG, diverging, stop 1 of 9 (lowest) */
  --scale-brbg-2: #BF812D; /* BrBG, diverging, stop 2 of 9 */
  --scale-brbg-3: #DFC27D; /* BrBG, diverging, stop 3 of 9 */
  --scale-brbg-4: #F6E8C3; /* BrBG, diverging, stop 4 of 9 */
  --scale-brbg-5: #F5F5F5; /* BrBG, diverging, stop 5 of 9 (middle) */
  --scale-brbg-6: #C7EAE5; /* BrBG, diverging, stop 6 of 9 */
  --scale-brbg-7: #80CDC1; /* BrBG, diverging, stop 7 of 9 */
  --scale-brbg-8: #35978F; /* BrBG, diverging, stop 8 of 9 */
  --scale-brbg-9: #01665E; /* BrBG, diverging, stop 9 of 9 (highest) */
}

JSON arrays

{
  "viridis": [
    "#440154",
    "#472D7B",
    "#3B528B",
    "#2C728E",
    "#21918C",
    "#28AE80",
    "#5EC962",
    "#ADDC30",
    "#FDE725"
  ],
  "cividis": [
    "#00224E",
    "#1A386F",
    "#434E6C",
    "#61656F",
    "#7D7C78",
    "#9B9476",
    "#BCAE6C",
    "#DEC958",
    "#FEE838"
  ],
  "Blues": [
    "#F7FBFF",
    "#DEEBF7",
    "#C6DBEF",
    "#9ECAE1",
    "#6BAED6",
    "#4292C6",
    "#2171B5",
    "#08519C",
    "#08306B"
  ],
  "YlGnBu": [
    "#FFFFD9",
    "#EDF8B1",
    "#C7E9B4",
    "#7FCDBB",
    "#41B6C4",
    "#1D91C0",
    "#225EA8",
    "#253494",
    "#081D58"
  ],
  "RdBu": [
    "#B2182B",
    "#D6604D",
    "#F4A582",
    "#FDDBC7",
    "#F7F7F7",
    "#D1E5F0",
    "#92C5DE",
    "#4393C3",
    "#2166AC"
  ],
  "PuOr": [
    "#B35806",
    "#E08214",
    "#FDB863",
    "#FEE0B6",
    "#F7F7F7",
    "#D8DAEB",
    "#B2ABD2",
    "#8073AC",
    "#542788"
  ],
  "BrBG": [
    "#8C510A",
    "#BF812D",
    "#DFC27D",
    "#F6E8C3",
    "#F5F5F5",
    "#C7EAE5",
    "#80CDC1",
    "#35978F",
    "#01665E"
  ]
}

Tailwind config

// Generated by Auric Artisan sequential and diverging palettes on 2026-10-14
/** @type {import('tailwindcss').Config} */
module.exports = {
  theme: {
    extend: {
      colors: {
        "scale": {
          "viridis": {
            "1": "#440154",
            "2": "#472D7B",
            "3": "#3B528B",
            "4": "#2C728E",
            "5": "#21918C",
            "6": "#28AE80",
            "7": "#5EC962",
            "8": "#ADDC30",
            "9": "#FDE725"
          },
          "cividis": {
            "1": "#00224E",
            "2": "#1A386F",
            "3": "#434E6C",
            "4": "#61656F",
            "5": "#7D7C78",
            "6": "#9B9476",
            "7": "#BCAE6C",
            "8": "#DEC958",
            "9": "#FEE838"
          },
          "blues": {
            "1": "#F7FBFF",
            "2": "#DEEBF7",
            "3": "#C6DBEF",
            "4": "#9ECAE1",
            "5": "#6BAED6",
            "6": "#4292C6",
            "7": "#2171B5",
            "8": "#08519C",
            "9": "#08306B"
          },
          "ylgnbu": {
            "1": "#FFFFD9",
            "2": "#EDF8B1",
            "3": "#C7E9B4",
            "4": "#7FCDBB",
            "5": "#41B6C4",
            "6": "#1D91C0",
            "7": "#225EA8",
            "8": "#253494",
            "9": "#081D58"
          },
          "rdbu": {
            "1": "#B2182B",
            "2": "#D6604D",
            "3": "#F4A582",
            "4": "#FDDBC7",
            "5": "#F7F7F7",
            "6": "#D1E5F0",
            "7": "#92C5DE",
            "8": "#4393C3",
            "9": "#2166AC"
          },
          "puor": {
            "1": "#B35806",
            "2": "#E08214",
            "3": "#FDB863",
            "4": "#FEE0B6",
            "5": "#F7F7F7",
            "6": "#D8DAEB",
            "7": "#B2ABD2",
            "8": "#8073AC",
            "9": "#542788"
          },
          "brbg": {
            "1": "#8C510A",
            "2": "#BF812D",
            "3": "#DFC27D",
            "4": "#F6E8C3",
            "5": "#F5F5F5",
            "6": "#C7EAE5",
            "7": "#80CDC1",
            "8": "#35978F",
            "9": "#01665E"
          }
        }
      }
    },
  },
};

Design tokens (W3C DTCG)

{
  "$schema": "https://schemas.tokens.studio/latest/tokens-schema.json",
  "$description": "Generated by Auric Artisan sequential and diverging palettes on 2026-10-14",
  "scale": {
    "viridis": {
      "1": {
        "$value": "#440154",
        "$type": "color",
        "$description": "viridis, sequential, stop 1 of 9 (lowest)"
      },
      "2": {
        "$value": "#472D7B",
        "$type": "color",
        "$description": "viridis, sequential, stop 2 of 9"
      },
      "3": {
        "$value": "#3B528B",
        "$type": "color",
        "$description": "viridis, sequential, stop 3 of 9"
      },
      "4": {
        "$value": "#2C728E",
        "$type": "color",
        "$description": "viridis, sequential, stop 4 of 9"
      },
      "5": {
        "$value": "#21918C",
        "$type": "color",
        "$description": "viridis, sequential, stop 5 of 9"
      },
      "6": {
        "$value": "#28AE80",
        "$type": "color",
        "$description": "viridis, sequential, stop 6 of 9"
      },
      "7": {
        "$value": "#5EC962",
        "$type": "color",
        "$description": "viridis, sequential, stop 7 of 9"
      },
      "8": {
        "$value": "#ADDC30",
        "$type": "color",
        "$description": "viridis, sequential, stop 8 of 9"
      },
      "9": {
        "$value": "#FDE725",
        "$type": "color",
        "$description": "viridis, sequential, stop 9 of 9 (highest)"
      }
    },
    "cividis": {
      "1": {
        "$value": "#00224E",
        "$type": "color",
        "$description": "cividis, sequential, stop 1 of 9 (lowest)"
      },
      "2": {
        "$value": "#1A386F",
        "$type": "color",
        "$description": "cividis, sequential, stop 2 of 9"
      },
      "3": {
        "$value": "#434E6C",
        "$type": "color",
        "$description": "cividis, sequential, stop 3 of 9"
      },
      "4": {
        "$value": "#61656F",
        "$type": "color",
        "$description": "cividis, sequential, stop 4 of 9"
      },
      "5": {
        "$value": "#7D7C78",
        "$type": "color",
        "$description": "cividis, sequential, stop 5 of 9"
      },
      "6": {
        "$value": "#9B9476",
        "$type": "color",
        "$description": "cividis, sequential, stop 6 of 9"
      },
      "7": {
        "$value": "#BCAE6C",
        "$type": "color",
        "$description": "cividis, sequential, stop 7 of 9"
      },
      "8": {
        "$value": "#DEC958",
        "$type": "color",
        "$description": "cividis, sequential, stop 8 of 9"
      },
      "9": {
        "$value": "#FEE838",
        "$type": "color",
        "$description": "cividis, sequential, stop 9 of 9 (highest)"
      }
    },
    "blues": {
      "1": {
        "$value": "#F7FBFF",
        "$type": "color",
        "$description": "Blues, sequential, stop 1 of 9 (lowest)"
      },
      "2": {
        "$value": "#DEEBF7",
        "$type": "color",
        "$description": "Blues, sequential, stop 2 of 9"
      },
      "3": {
        "$value": "#C6DBEF",
        "$type": "color",
        "$description": "Blues, sequential, stop 3 of 9"
      },
      "4": {
        "$value": "#9ECAE1",
        "$type": "color",
        "$description": "Blues, sequential, stop 4 of 9"
      },
      "5": {
        "$value": "#6BAED6",
        "$type": "color",
        "$description": "Blues, sequential, stop 5 of 9"
      },
      "6": {
        "$value": "#4292C6",
        "$type": "color",
        "$description": "Blues, sequential, stop 6 of 9"
      },
      "7": {
        "$value": "#2171B5",
        "$type": "color",
        "$description": "Blues, sequential, stop 7 of 9"
      },
      "8": {
        "$value": "#08519C",
        "$type": "color",
        "$description": "Blues, sequential, stop 8 of 9"
      },
      "9": {
        "$value": "#08306B",
        "$type": "color",
        "$description": "Blues, sequential, stop 9 of 9 (highest)"
      }
    },
    "ylgnbu": {
      "1": {
        "$value": "#FFFFD9",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 1 of 9 (lowest)"
      },
      "2": {
        "$value": "#EDF8B1",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 2 of 9"
      },
      "3": {
        "$value": "#C7E9B4",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 3 of 9"
      },
      "4": {
        "$value": "#7FCDBB",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 4 of 9"
      },
      "5": {
        "$value": "#41B6C4",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 5 of 9"
      },
      "6": {
        "$value": "#1D91C0",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 6 of 9"
      },
      "7": {
        "$value": "#225EA8",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 7 of 9"
      },
      "8": {
        "$value": "#253494",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 8 of 9"
      },
      "9": {
        "$value": "#081D58",
        "$type": "color",
        "$description": "YlGnBu, sequential, stop 9 of 9 (highest)"
      }
    },
    "rdbu": {
      "1": {
        "$value": "#B2182B",
        "$type": "color",
        "$description": "RdBu, diverging, stop 1 of 9 (lowest)"
      },
      "2": {
        "$value": "#D6604D",
        "$type": "color",
        "$description": "RdBu, diverging, stop 2 of 9"
      },
      "3": {
        "$value": "#F4A582",
        "$type": "color",
        "$description": "RdBu, diverging, stop 3 of 9"
      },
      "4": {
        "$value": "#FDDBC7",
        "$type": "color",
        "$description": "RdBu, diverging, stop 4 of 9"
      },
      "5": {
        "$value": "#F7F7F7",
        "$type": "color",
        "$description": "RdBu, diverging, stop 5 of 9 (middle)"
      },
      "6": {
        "$value": "#D1E5F0",
        "$type": "color",
        "$description": "RdBu, diverging, stop 6 of 9"
      },
      "7": {
        "$value": "#92C5DE",
        "$type": "color",
        "$description": "RdBu, diverging, stop 7 of 9"
      },
      "8": {
        "$value": "#4393C3",
        "$type": "color",
        "$description": "RdBu, diverging, stop 8 of 9"
      },
      "9": {
        "$value": "#2166AC",
        "$type": "color",
        "$description": "RdBu, diverging, stop 9 of 9 (highest)"
      }
    },
    "puor": {
      "1": {
        "$value": "#B35806",
        "$type": "color",
        "$description": "PuOr, diverging, stop 1 of 9 (lowest)"
      },
      "2": {
        "$value": "#E08214",
        "$type": "color",
        "$description": "PuOr, diverging, stop 2 of 9"
      },
      "3": {
        "$value": "#FDB863",
        "$type": "color",
        "$description": "PuOr, diverging, stop 3 of 9"
      },
      "4": {
        "$value": "#FEE0B6",
        "$type": "color",
        "$description": "PuOr, diverging, stop 4 of 9"
      },
      "5": {
        "$value": "#F7F7F7",
        "$type": "color",
        "$description": "PuOr, diverging, stop 5 of 9 (middle)"
      },
      "6": {
        "$value": "#D8DAEB",
        "$type": "color",
        "$description": "PuOr, diverging, stop 6 of 9"
      },
      "7": {
        "$value": "#B2ABD2",
        "$type": "color",
        "$description": "PuOr, diverging, stop 7 of 9"
      },
      "8": {
        "$value": "#8073AC",
        "$type": "color",
        "$description": "PuOr, diverging, stop 8 of 9"
      },
      "9": {
        "$value": "#542788",
        "$type": "color",
        "$description": "PuOr, diverging, stop 9 of 9 (highest)"
      }
    },
    "brbg": {
      "1": {
        "$value": "#8C510A",
        "$type": "color",
        "$description": "BrBG, diverging, stop 1 of 9 (lowest)"
      },
      "2": {
        "$value": "#BF812D",
        "$type": "color",
        "$description": "BrBG, diverging, stop 2 of 9"
      },
      "3": {
        "$value": "#DFC27D",
        "$type": "color",
        "$description": "BrBG, diverging, stop 3 of 9"
      },
      "4": {
        "$value": "#F6E8C3",
        "$type": "color",
        "$description": "BrBG, diverging, stop 4 of 9"
      },
      "5": {
        "$value": "#F5F5F5",
        "$type": "color",
        "$description": "BrBG, diverging, stop 5 of 9 (middle)"
      },
      "6": {
        "$value": "#C7EAE5",
        "$type": "color",
        "$description": "BrBG, diverging, stop 6 of 9"
      },
      "7": {
        "$value": "#80CDC1",
        "$type": "color",
        "$description": "BrBG, diverging, stop 7 of 9"
      },
      "8": {
        "$value": "#35978F",
        "$type": "color",
        "$description": "BrBG, diverging, stop 8 of 9"
      },
      "9": {
        "$value": "#01665E",
        "$type": "color",
        "$description": "BrBG, diverging, stop 9 of 9 (highest)"
      }
    }
  }
}

Plain text to paste; nothing is downloaded. jet and RdYlGn are measured above but not exported.

Sources

Sources and method

Where the palettes, the data and the measurements come from.

viridis, cividis and jet are matplotlib's 256-color tables at entries 0, 32, 64 … 224 and 255; the ColorBrewer schemes are their 9-class versions, the same in the colorbrewer package and in d3. Lightness is OKLCH L; differences are CIEDE2000; simulations apply Machado's matrices in linear light at full severity. Node tests recompute every number on this page from the site's color engine. Checked with axe and the keyboard in Chromium; not yet tested with a screen reader. Last reviewed on 14 October 2026.

This product includes color specifications and designs developed by Cynthia Brewer (http://colorbrewer.org/).

Found a mistake? Write to us and we will correct it.