1

2 つの系列を持つ Highcharts 横棒グラフがあります。グループ化されたデータ ポイントを各データ ラベルに結合して、1.00 / 2.3 のようにまとめて表示することはできますか?

コード:

var labels = [
    'AAA/Aaa',
    'AA+/Aa1',
    'AA/Aa2',
    'AA-/Aa3',
    'A+/A1',
    'A/A2',
    'A-/A3'
];
var theData = [
    {
        name: 'Company 1',
        data: [0.576,7.617,12.101,18.839,18.022,7.644,9.72]
    },
    {
        name: 'Company 2',
        data: [4.123,12.862,14.561,13.754,12.226,11.135,7.51]
    }
];

ハイチャート設定:

$(function () {
    $('#container').highcharts({
        chart: {
            type: 'bar'
        },
        legend: {
            align: 'center',
            layout: 'horizontal',
            verticalAlign: 'bottom'
        },
        plotOptions: {
            series: {
                dataLabels: {
                    enabled: true,
                    formatter: function() {
                        var out = '<span class="col-chart-label">';
                        out +=  this.y + ' / ' + this.y;
                        out += '</span>'
                        return out;
                    },
                    useHTML: true
                }
            }
        },
        series:  theData,
        tooltip: {
            enabled: false
        },
        xAxis: {
            categories: labels,
            labels: {
                formatter: false,
                overflow: 'justify',
                rotation: false
            },
            reversed: true
        }
    });
});

デモはこちら: http://jsfiddle.net/dylanmac/RungW/2/

繰り返しになりますが、バーのペアごとに 1 つのデータ ラベルが必要です。上部のバーが最初の値で、下部のバーが 2 番目の値で、「/」で区切られます。

どうもありがとう。

4

1 に答える 1

4

特定のカテゴリのすべての系列と合計値をループできます。次を参照してください: http://jsfiddle.net/RungW/3/

                formatter: function() {
                    var out = '<span class="col-chart-label">',
                        series = this.point.series.chart.series,
                        p1 = series[0].yData[this.point.x],
                        p2 = series[1].yData[this.point.x];
                    out +=  this.y + ' / ' + (p1 + p2);
                    out += '</span>'
                    return out;
                },
于 2013-09-12T09:16:57.660 に答える