首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >高级图表三键图,系列颜色

高级图表三键图,系列颜色
EN

Stack Overflow用户
提问于 2018-12-11 04:32:43
回答 2查看 2.9K关注 0票数 3

如何使系列颜色与数据颜色相同?

在这个例子中,“不平衡”数据是红色的,但是序列是蓝色的。

代码语言:javascript
复制
Highcharts.chart('container', {

    title: {
        text: 'Highcharts Sankey Diagram'
    },

    series: [{
            colors: ["#90CAF9", "#F44336", "#1565C0"],
        keys: ['from', 'to', 'weight'],
        data: [
            {name: "prop-1", color: "#90CAF9", from: "prop-1", to: "transition", weight: 0},
            {name: "prop-2", color: "#90CAF9", from: "prop-2", to: "transition", weight: 4.14},             
            {name: "imbalance", color: "#F44336", from: "imbalance", to: "transition", weight: 0.6},
            {name: "prop-3", color: "#1565C0", from: "transition", to: "prop-3", weight: 4.74},
            {name: "prop-4", color: "#1565C0", from: "transition", to: "prop-4", weight: 0},
        ],
        type: 'sankey',
        name: 'Sankey demo series'
    }]

});

示例:https://jsfiddle.net/s3xnm5v8/

更新理解。使用节点是必要的。https://jsfiddle.net/p4f21w7e/

EN

回答 2

Stack Overflow用户

发布于 2019-04-09 10:17:22

关键是要认识到有两种方法可以为你的图表着色:

  • 系列颜色(series[],.colors)将为节点着色。
  • 系列数据(series[].data[].color)为您的流着色。

看一下这个例子:

代码语言:javascript
复制
 series: [{
    colors: ["#880000",  "#AFAFAF",  "#008800", "#000088", "#ffb238", "#ffee37"],
    data: [

        {color: "#BB0000", from: "Red", to: "Colour Demo", weight: 10},
        {color: "#00BB00", from: "Green", to: "Colour Demo", weight: 4},                       {color: "#0000BB",  from: "Blue", to: "Colour Demo", weight: 6},
        {color: "#ffb238", from: "Colour Demo", to: "Orange", weight: 10},
        {color: "#ffee37",  from: "Colour Demo", to: "Yellow", weight: 10}
    ]
}]

https://jsfiddle.net/jjjjssssfidd/c2dbjshx/2/

节点按照呈现的顺序(从左到右,向下移动)使用系列颜色着色。所以,在这个例子中:

  • “红色”优先(使用series[].colors)
  • 然后是“彩色演示”(它使用series[].colors1)
  • 回到格林(series[].colors2)
  • 下降到“蓝色”(使用series[].colors3)
  • 然后转到橘子(series[].colors4)
  • 最后是黄色(series[].colors5)

流本身是按照该数据点的关联颜色着色的,因此这是一个直接的向前关联。

票数 7
EN

Stack Overflow用户

发布于 2018-12-11 04:39:33

您可以使用sankey系列类型的“颜色”属性。

https://api.highcharts.com/highcharts/series.sankey.colors

代码语言:javascript
复制
series: [{
    keys: ['from', 'to', 'weight'],
    data: [
        {from:'Brazil', to:'Portugal', weight:5},
        ['Canada', 'Portugal', 1 ],
        ['Canada', 'France', 5 ],
        ['Canada', 'England', 1 ],
        ['Mexico', 'Portugal', 1 ],
        ['Mexico', 'France', 1 ],
        ['Mexico', 'Spain', 5 ],
        ['Mexico', 'England', 1 ],
        ['USA', 'Portugal', 1 ],
        ['USA', 'France', 1 ],
        ['USA', 'Spain', 1 ],
        ['USA', 'England', 5 ]
    ],
    type: 'sankey',
    name: 'Sankey demo series',
    colors: ['#00796B', '#ff0000', '#00ff00','#0000ff']
}]

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53717420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档