0

Highstock の rangeselector からの x 軸の値に問題があります。1d を選択した場合、x 軸の値は 00.00、01.00、02.00....23.00 のように時間単位にする必要があります。1w を選択した場合、x 軸の値は jan-1、jan-2、jan-3 になります。1m を選択した場合、x 軸の値は jan-1、jan-2 で、間隔は 1 週間です。私のコード。

http://jsfiddle.net/t6uYV/

                 buttons[1].on('click', function (e) {
                    console.debug("hello onclick of the button ");
                        reset_all_buttons();
                        chart.rangeSelector.buttons[1].setState(2);


                        chart.xAxis[0].setTitle({
                            title: {
                                text: 'Date/time',
                                type: "datetime",
                                tickInterval : 24 * 3600 * 1000,
                                dateTimeLabelFormats: {
                                    day: '%b %d'
                                },
                                labels: {
                                    formatter: function() {
                                        return Highcharts.dateFormat('%b %d', this.value);
                                    }
                                }
                            }
                        });

                        chart.setSize(900,600,false);

                        chart.addSeries({
                            name : 'Energy Consumption',
                            id   : 'EnergyConsumption_data',
                            yAxis: 1,
                            data : [[Date.UTC(2013,05,20),12],[Date.UTC(2013,05,21),14],[Date.UTC(2013,05,22),16],[Date.UTC(2013,05,23),22],[Date.UTC(2013,05,24),11],[Date.UTC(2013,05,25),10],[Date.UTC(2013,05,26),14]],
                            pointInterval: 24 * 3600 * 1000
                        }); 
                        chart.addSeries({
                            name : 'OutDoor Temperature',
                            id   : 'OutDoorTemperature_data',
                            data : [[Date.UTC(2013,05,20),24],[Date.UTC(2013,05,21),14],[Date.UTC(2013,05,22),16],[Date.UTC(2013,05,23),22],[Date.UTC(2013,05,24),11],[Date.UTC(2013,05,25),10],[Date.UTC(2013,05,26),14]],
                            pointInterval: 24 * 3600 * 1000
                        });

                    });

rangeselector 値のいずれかをクリックすると、幅が適用されません。

これに対する解決策を教えてください。この1週間苦戦。

前もって感謝します、

マヒダール

4

1 に答える 1

0

これは tickInterval に関連しているため、動的に tickInterval を設定する必要があります。これを実現するには、 tickPositioner http://api.highcharts.com/highstock#xAxis.tickPositionerを使用する必要があります

于 2013-06-03T13:33:10.367 に答える