2

我不知道 highchart 是否支持这个,我似乎在我的搜索中找不到任何东西。但我想在一列内堆叠一列。

我有 2 系列数据:每日活跃用户 (DAU) 和新用户 (NU)。新用户是每日活跃用户的一部分,因此我想将新用户堆叠在每日活跃用户中,而不是在它之上。

示例:对于一个条目,新用户为 3,每日活跃用户为 10。在 Y 轴上,我想让每日活跃用户达到值 10,但我想开始绘制新用户的值 7。

这是我到目前为止所拥有的。这是不正确的,因为新用户只是绘制在每日活跃用户之上。

http://jsfiddle.net/6JACr/1/

如果您查看 2013 年 8 月 6 日的第一个条目:每日活跃用户数为 6,310,新用户数为 1,325。新用户从 6,310 开始绘制,而我希望它从 4,985 (6,310-1,325) 开始。

这是我堆叠列的代码

nu_series = {
        name: "NU",
        type: "column",
        data: nu_data,
        stack: 0
};
all_series[1] = nu_series;
dau_series = {
        name: "DAU",
        type: "column",
        data: dau_data,
        stack: 0
};
all_series[2] = dau_series;
4

1 回答 1

3

这个例子

这是你在找什么?基本上关闭分组和堆叠以及透明颜色

$(函数(){

    // First, let's make the colors transparent
    Highcharts.getOptions().colors = Highcharts.map(Highcharts.getOptions().colors, function (color) {
        return Highcharts.Color(color)
            .setOpacity(0.5)
            .get('rgba');
    });

    $('#container').highcharts({
        chart: {
            type: 'column'
        },
        title: {
            text: 'Monthly Average Rainfall'
        },
        subtitle: {
            text: 'Source: WorldClimate.com'
        },
        xAxis: {
            categories: [
                'Jan',
                'Feb',
                'Mar',
                'Apr',
                'May',
                'Jun',
                'Jul',
                'Aug',
                'Sep',
                'Oct',
                'Nov',
                'Dec'
            ]
        },
        yAxis: {
            min: 0,
            title: {
                text: 'Rainfall (mm)'
            }
        },
        legend: {
            layout: 'vertical',
            backgroundColor: '#FFFFFF',
            align: 'left',
            verticalAlign: 'top',
            x: 100,
            y: 70,
            floating: true,
            shadow: true
        },
        tooltip: {
            shared: true,
            valueSuffix: ' mm'
        },
        plotOptions: {
            column: {
                grouping: false,
                shadow: false
            }
        },
        series: [{
            name: 'Tokyo',
            data: [49.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4],
            pointPadding: 0

        }, {
            name: 'New York',
            data: [83.6, 78.8, 98.5, 93.4, 106.0, 84.5, 105.0, 104.3, 91.2, 83.5, 106.6, 92.3],
            pointPadding: 0.1

        }, {
            name: 'London',
            data: [48.9, 38.8, 39.3, 41.4, 47.0, 48.3, 59.0, 59.6, 52.4, 65.2, 59.3, 51.2],
            pointPadding: 0.2

        }, {
            name: 'Berlin',
            data: [42.4, 33.2, 34.5, 39.7, 52.6, 75.5, 57.4, 60.4, 47.6, 39.1, 46.8, 51.1],
            pointPadding: 0.3

        }]
    });
});
于 2013-09-13T03:47:11.927 回答