1

これらの値を初期オプション オブジェクトに設定すると、すべて正常に動作します。たとえば、後で chart.options.yAxis.tickInterval を使用してオプションを変更すると、yAxis を再描画するときに無視されるようです。

    // Global variables
var markInterval = undefined;
var minInterval = 0;
var maxInterval = undefined;

chart = new Highcharts.Chart({
        // ... 
        yAxis: {
            title: {
                text: 'Mark'
            },
            labels: {
                formatter: function() {

                    // html formatting
                },
                useHTML: true
            },
            tickInterval: markInterval,
            min: minInterval,
            max: maxInterval
        },
        plotOptions: {
            series: {
                events: {
                    legendItemClick: function(event) {
                        // setTickIntervals(); Change the global values markInterval, minInterval and maxInterval
                        chart.options.yAxis.tickInterval = markInterval;
                        chart.options.yAxis.min = minInterval;
                        chart.options.yAxis.max = maxInterval;
                        chart.redraw();
                    }
                }
            }
        }
    });
4

1 に答える 1

11

新しい値を誤って設定していました。例:

chart.options.yAxis.tickInterval = markInterval;

する必要があります

chart.yAxis[0].options.tickInterval = markInterval;

その後、すべてが期待どおりに機能します。

于 2013-01-10T10:31:46.140 に答える