1

すべてのカテゴリを満たすことを期待せずに、ハイチャートにポイントを追加したいと考えています。出来ますか?回避策はありますか?X データが時間に基づいている場合は同じことをしましたが、他の種類のデータで行うことはできますか? たとえば、1 つのシリーズを Apples と Oranges だけにすることができますが、他のカテゴリはそうではありません。コードを参照してください:

$(function () {
    $('#container').highcharts({
        chart: {
            type: 'column'
        },
        title: {
            text: 'Stacked column chart'
        },
        xAxis: {
            categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']
        },
        yAxis: {
            min: 0,
            title: {
                text: 'Total fruit consumption'
            },
            stackLabels: {
                enabled: true,
                style: {
                    fontWeight: 'bold',
                    color: (Highcharts.theme && Highcharts.theme.textColor) || 'gray'
                }
            }
        },
        legend: {
            align: 'right',
            x: -70,
            verticalAlign: 'top',
            y: 20,
            floating: true,
            backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColorSolid) || 'white',
            borderColor: '#CCC',
            borderWidth: 1,
            shadow: false
        },
        tooltip: {
            formatter: function() {
                return '<b>'+ this.x +'</b><br/>'+
                    this.series.name +': '+ this.y +'<br/>'+
                    'Total: '+ this.point.stackTotal;
            }
        },
        plotOptions: {
            column: {
                stacking: 'normal',
                dataLabels: {
                    enabled: true,
                    color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'white'
                }
            }
        },
        series: [{
            name: 'John',
            data: [[Apples,5], [Oranges, 6]]
        }, {
            name: 'Jane',
            data: [[Grapes,2]]
        }, {
            name: 'Joe',
            data: [[Grapes,2], [Bananas, 4]]
        }]
    });
});
4

1 に答える 1

3

インデックスをカテゴリに使用できます: http://jsfiddle.net/BwyAj/

var categories = ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']

...

series: [{
        name: 'John',
        data: [[categories.indexOf('Apples'),5], [categories.indexOf('Oranges'), 6]]
    }, {
        name: 'Jane',
        data: [[categories.indexOf('Grapes'),2]]
    }, {
        name: 'Joe',
        data: [[categories.indexOf('Grapes'),2], [categories.indexOf('Bananas'), 4]]
    }]
于 2013-08-16T17:58:02.937 に答える