当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript d3-scale.scaleSequential函数代码示例

本文整理汇总了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();
开发者ID:AbraaoAlves,项目名称:DefinitelyTyped,代码行数:29,代码来源:d3-scale-tests.ts

示例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;
}
开发者ID:GordonSmith,项目名称:Visualization,代码行数:96,代码来源:Palette.ts


注:本文中的d3-scale.scaleSequential函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。