Собственная всплывающая подсказка highchart

У меня есть массив. Var myArray = ['a', 'b', 'c', 'd', 'e', ​​'f', 'g', 'h', 'i'];

Я хочу изменить всплывающую подсказку по умолчанию с помощью моего массива. Где значение первой подсказки от бара - «a», второй - «b» и далее до «i».

как это изображение: введите описание изображения здесь

как я могу это сделать?

это мой код

<script type="text/javascript">
$(function () {
    var chart;
    $(document).ready(function() {
        chart = new Highcharts.Chart({
            chart: {
                renderTo: 'container',
                type: 'column'
            },
            title: {
                text: 'Monthly Average Rainfall'
            },
            subtitle: {
                text: 'Source: WorldClimate.com'
            },
            xAxis: {
                categories: [
                    'Jan',
                    'Feb',
                    'Mar'
                ]
            },
            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: {
                formatter: function() {
                    var myArray = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'];
                    var i =0;
                    i++;
                    return ''+myArray[i] ;


                }
            },
            plotOptions: {
                column: {
                    pointPadding: 0.2,
                    borderWidth: 0
                }
            },
                series: [{
                name: 'Tokyo',
                data: [49.9, 71.5, 106.4]

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

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

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

            }]
        });
    });

});
        </script>

person Zulkifli Said    schedule 15.07.2012    source источник


Ответы (1)


Во-первых, это явно не так уж и умно:

var i =0;
i++;

Как вы могли видеть при отладке, у вас есть доступ к ключу (и многому другому). Я бы сделал ассоциативный массив как таковой:

var myTooltips = { "Jan": A, "Feb": B, "Mar": C } // Etc

// Other code
(function($){ // encapsulate jQuery
var chart;

А также

formatter: function() {
    return myTooltips[ this.key ];
}
person EricG    schedule 15.07.2012