Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function q_legend_def(scale) {
// setup legend marks
var titles = dl.extend(m.titles, legendTitle(config)),
gradient = dl.extend(m.gradient, legendGradient(config)),
labels = dl.extend(m.labels, hLegendLabels(config)),
grad = new Gradient();
// setup color gradient
var dom = scale.domain(),
min = dom[0],
max = dom[dom.length-1],
f = scale.copy().domain([min, max]).range([0,1]);
var stops = (scale.type !== 'linear' && scale.ticks) ?
scale.ticks.call(scale, 15) : dom;
if (min !== stops[0]) stops.unshift(min);
if (max !== stops[stops.length-1]) stops.push(max);
for (var i=0, n=stops.length; i
export default function(scale, p0, p1, count, group) {
scale = getScale(scale, (group || this).context);
const gradient = Gradient(p0, p1);
let stops = scale.domain(),
min = stops[0],
max = peek(stops),
fraction = identity
if (!(max - min)) {
// expand scale if domain has zero span, fix #1479
scale = (scale.interpolator
? get('sequential')().interpolator(scale.interpolator())
: get('linear')().interpolate(scale.interpolate()).range(scale.range())
).domain([min=0, max=1]);
} else {
fraction = scaleFraction(scale, min, max);
}