本文整理汇总了TypeScript中d3-scale.scaleSequential函数的典型用法代码示例。如果您正苦于以下问题:TypeScript scaleSequential函数的具体用法?TypeScript scaleSequential怎么用?TypeScript scaleSequential使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了scaleSequential函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: localTimeScaleNumString
outputString = localTimeScaleNumString(new Date(2016, 6, 4));
// copy(...) -----------------------------------------------------------------
const copiedTimeScale: d3Scale.ScaleTime<number, string> = localTimeScaleNumString.copy();
// -------------------------------------------------------------------------------
// Sequential Scale Factory
// -------------------------------------------------------------------------------
// scaleSequential() -----------------------------------------------------------------
let sequentialScaleColorString: d3Scale.ScaleSequential<string>;
sequentialScaleColorString = d3Scale.scaleSequential<string>(d3Scale.interpolateRainbow);
sequentialScaleColorString = d3Scale.scaleSequential(d3Scale.interpolateCool); // inferred Output type string
// ScaleSequential Interface ========================================================
// domain(...) -----------------------------------------------------------------
sequentialScaleColorString = sequentialScaleColorString.domain([0, 1]);
sequentialScaleColorString = sequentialScaleColorString.domain([new NumCoercible(0), new NumCoercible(100)]);
const domainSequential: [number, number] = sequentialScaleColorString.domain();
// clamp(...) -----------------------------------------------------------------
sequentialScaleColorString = sequentialScaleColorString.clamp(true);
clampFlag = sequentialScaleColorString.clamp();
示例2: palette_rainbow
function palette_rainbow(id?, _colors?, _steps?) {
if (!arguments.length) {
const retVal = ["default"];
for (const key in m_colorbrewer) {
if (brewerOrdinal.indexOf(key) === -1) {
retVal.push(key);
}
}
return retVal;
}
let scale = null;
let colors = _colors;
const _custom = function (colors, steps?) {
steps = steps || 32;
const subPaletteSize = Math.ceil(steps / (colors.length - 1));
const range = [];
let prevColor = null;
colors.forEach(function (color) {
if (prevColor) {
const scale = d3ScaleLinear()
.domain([0, subPaletteSize])
.range([prevColor, color])
.interpolate(d3InterpolateLab as any)
;
for (let i = 0; i < subPaletteSize; ++i) {
range.push(scale(i));
}
}
prevColor = color;
});
scale = d3ScaleQuantize().domain([0, 100]).range(range);
return scale;
};
if (_colors) {
scale = _custom(_colors, _steps);
} else {
if (m_colorbrewer[id]) {
let largestPalette = 12;
while (largestPalette > 0) {
if (m_colorbrewer[id][largestPalette]) {
scale = _custom(m_colorbrewer[id][largestPalette]);
break;
}
--largestPalette;
}
}
if (m_d3[id]) {
scale = d3ScaleSequential(m_d3[id]).domain([0, 100]);
}
if (!scale) {
scale = _custom(m_colorbrewer.RdYlGn[11]);
}
colors = scale.range ? scale.range() : scale;
}
const rainbow: any = function (x, low, high) {
if (low === high) {
return scale.domain([low - 1, high + 1])(x);
}
return scale.domain([low, high])(x);
};
rainbow.type = function () {
return "rainbow";
};
rainbow.id = function (_) {
if (!arguments.length) return id;
id = _;
return rainbow;
};
rainbow.colors = function (_) {
if (!arguments.length) return colors;
colors = _;
return rainbow;
};
rainbow.clone = function (newID) {
rainbowCache[newID] = palette_rainbow(newID, this.colors());
return rainbowCache[newID];
};
rainbow.cloneNotExists = function (newID) {
if (rainbowCache[newID]) {
return rainbowCache[newID];
}
return this.clone(newID);
};
rainbow.switch = function (_id, _colors) {
if (id === _id) {
return this;
}
return arguments.length ? fetchRainbowItem(_id, _colors) : fetchRainbowItem();
};
return rainbow;
}