Highcharts堆叠条形逻辑与我需要的相反

时间:2018-03-21 13:56:48

标签: javascript highcharts

我遇到了一个我需要做的图表的问题。 我有一个主题博客,每个主题的文章都可以处于“草案”状态“待验证”或“已发布”。

我想显示一个图表,显示每个主题的重新分区(不是馅饼,因为我需要一个主题的馅饼,我有很多)。

所以我希望渲染是这样的: enter image description here

Highcharts.chart('container', {
    chart: {
        type: 'bar'
    },
    title: {
        text: 'Stacked bar chart'
    },
    xAxis: {
        categories: ['Topic 1', 'Topic 2', 'Topic 3', 'Topic 4', 'Topic 5']
    },
    yAxis: {
        min: 0,
        title: {
            text: 'Total fruit consumption'
        }
    },
    legend: {
        reversed: true
    },
    plotOptions: {
        series: {
            stacking: 'normal'
        }
    },
    series: [ {
        name: 'Published',
        color: '#2ecc71',
        data: [13, 14, 14, 12, 15]
    },{
        name: 'To be validated',
        color: '#e67e22',
        data: [2, 2, 3, 2, 1]
    }, {
        name: 'Draft',
        color: '#f1c40f',
        data: [5, 3, 4, 7, 2]
    }]
});

http://jsfiddle.net/04mxw2h1/4/

但是,highcharts的逻辑与我想要展示的完全相反,我的系列不是“草稿”或“发布”,但对我来说,它应该是“主题1”,“主题2”等我可以让它工作,但似乎错了。

我的第二个问题是因为我想向下钻取,点击主题会显示所点击主题的子主题。问题是highcharts drilldown的概念,它在系列中,所以在我的情况下,我可以为“草稿”或“已发布”配置向下钻取,但我需要将钻取配置为类别(话题)。换句话说,如果用户点击主题2的任何状态,它应该显示主题2的子主题的值...

有些SO答案使用chart.addSingleSeriesAsDrilldown,但它似乎是非官方的,似乎是异步加载(例如:在向下钻取事件后从后端拉取数据)但我的所有数据已经​​在我的页面中所以它似乎不是正确的解决方案。

我是否应该在点击事件中使用这个构建系列的重型解决方案,还是可以使用一些选项来反转堆积条中的系列和类别?

0 个答案:

没有答案