In search of categorical color scheme families: dark, same perceptual brightness

Thanks, but those are not either too dark or not dark enough.

Second attempt, using the DE_CMC() metric (because it looks best to my eye), forcing a kind of dark yellow to be there (otherwise yellowish colors are pretty rare, why?), and results sorted by hue:

The first one looks kind of OK, so if anyone wants it, here are the values:

LCHuv{Float64}(100.0,0.0,0.0)
LCHuv{Float64}(0.0,0.0,0.0)
LCHuv{Float64}(51.863153619748246,93.77645820051907,23.238375666328537)
LCHuv{Float64}(70.5,84.0,70.5)
LCHuv{Float64}(43.99159466563735,61.591721169405666,131.19968337189033)
LCHuv{Float64}(49.53323427719795,62.386038925970134,250.83883848314323)
LCHuv{Float64}(37.2494937150584,131.4158387710182,270.28598024082146)
LCHuv{Float64}(29.91785388310216,25.124316742516655,310.2475589723785)
LCHuv{Float64}(10.898674004674053,21.026130868830556,335.6789198210797)
LCHuv{Float64}(52.5930045850733,129.7328214196894,352.8318079349615)
Code
using Colors

function pairwise_ΔE(colors,
                     adjusted_constants = [WHITE => 0.5, BLACK => 2.0];
                     metric = DE_2000())
    _lch = convert.(LCHuv, colors)
    min_ΔE = Inf
    function _update!(c1, c2, correction = 1.0)
        min_ΔE = min(min_ΔE, colordiff(c1, c2; metric) * correction)
    end
    for (i, c1) in enumerate(_lch)
        for (c, correction) in adjusted_constants
            _update!(c, c1, correction)
        end
        for c2 in @view(_lch[(i+1):end])
            _update!(c1, c2)
        end
    end
    sort!(vcat(_lch, first.(adjusted_constants)), by = hue) => min_ΔE
end

pre_list = [LCHuv(100.0, 0.0, 0.0) => 0.7, # white plot background, want extra distance
            LCHuv(0.0, 0.0, 0.0) => 1.2,   # black lines, no direct overlap, OK to be closer
            LCHuv(70.5, 84, 70.5) => 1.0]  # want to include manually

random_colors(n) = [RGB(rand(), rand(), rand()) for _ in 1:n]

r = sort!([pairwise_ΔE(random_colors(7), pre_list; metric = DE_CMC()) for _ in 1:100000],
          by = last, rev = true)
permutedims(mapreduce(first, hcat, r[1:10]))