0

私はこの縦棒グラフを持っていますhttp://jsfiddle.net/TU7TL/シリーズ名をそれぞれの列の下に表示する方法があるかどうか疑問に思っています.伝説で。以下のコード

$(function () {
    $('#container').highcharts({
        chart: {
            type: 'column'
        },
        title: {
            text: 'Monthly Average Rainfall'
        },
        subtitle: {
            text: 'Source: WorldClimate.com'
        },
        xAxis: {
            categories: [
                'Tokyo',
                'New York',
                'London'
            ]
        },
        yAxis: {
            min: 0,
            title: {
                text: 'Rainfall (mm)'
            }
        },
        tooltip: {
            headerFormat: '<span style="font-size:10px">{point.key}</span><table>',
            pointFormat: '<tr><td style="color:{series.color};padding:0">{series.name}: </td>' +
                '<td style="padding:0"><b>{point.y:.1f} mm</b></td></tr>',
            footerFormat: '</table>',
            shared: true,
            useHTML: true
        },
        plotOptions: {
            column: {
                pointPadding: 0.2,
                borderWidth: 0
            }
        },
        series: [{
            name: 'Tokyo',
            data: [49.9]

        }, {
            name: 'New York',
            data: [83.6],


        }, {
            name: 'London',
            data: [48.9]

        }, {
            name: 'Berlin',
            data: [42.4]

        }]
    });
});
4

1 に答える 1

2

次のようにカテゴリを完成させます。

categories: [
                    'Tokyo',
                    'New York',
                    'London',
                    'Berlin'
                ]

次に、スタッキング オプションを次のように指定します。

plotOptions: {
                column: {
                    pointPadding: 0.2,
                    borderWidth: 0,
                    stacking: 'normal'
                }
            }

次に、一連のデータを次のようにします。

series: [{
                name: 'Tokyo',
                data: [49.9,null,null,null]

            }, {
                name: 'New York',
                data: [null,83.6,null,null],


            }, {
                name: 'London',
                data: [null,null,48.9,null]

            }, {
                name: 'Berlin',
                data: [null,null,null,42.4]

            }]

ここにフィドルがあります

http://jsfiddle.net/TU7TL/1/

または、1つのシリーズのみを使用して、すべてのデータを次のようにシリーズ配列に入れることもできます。

series: [{
            name: 'Measure',
            data: [{y:49.9, color: colors[0]},{y:83.6, color: colors[1]},{y:48.9, color: colors[2]},{y:42.4,color: colors[3]}]

        }]
    });

この最後の方法では、同じシリーズで異なる色を指定する必要があります。以前は、Highchart から色を取得するために、変数「colors」を宣言して使用していました。

var colors = Highcharts.getOptions().colors;

フィドルの例はこちら: http://jsfiddle.net/TU7TL/4/

于 2013-08-26T15:30:35.170 に答える