当start index小于0时,Highcharts问题

时间:2014-03-18 17:27:43

标签: javascript highcharts

我有一个highcharts图表,系列绑定到一个数组(比如900 int value array)。我希望显示的方法是,xAxis上的第一个数字为-450,最后一个数字为正450,中间为零。
我能够通过设置xAxis的最小值和最大值来实现这一点,但是当图表呈现第一个值(来自数组)不会呈现我期望的位置时,它从0开始并忽略它之前的内容。 /> 另外,正如你可以看到xAxis显示的是熊的最小值,我希望它有一个较小的步骤,但是在api中看不到任何内容

enter image description here

我有点在这个问题上摸不着头脑,任何帮助都会受到赞赏。

由于

 var t = new Highcharts.Chart({
                    chart: {
                        renderTo: chart,
                        spacingTop: 0,
                        animation: false,
                        width: 420,
                        height: 280
                    },
                    credits: { enabled: false },
                    plotOptions: {
                        series: {
                            marker: {
                                enabled: false
                            }
                        }
                    },
                    exporting: { enabled: false },
                    legend: {
                        layout: 'vertical',
                        align: 'left',
                        x: 40,
                        verticalAlign: 'top',
                        y: 20,
                        floating: true,
                        backgroundColor: '#FFFFFF'
                    },
                    title: { text: "Profile X" },
                    xAxis: [{
                        min: 0 - arr[0].length / 2,
                        max: arr[0].length / 2,
                        ordinal: false
                    }],
                    yAxis: [{
                            labels: { style: { color: set1Color } },
                            title: { enabled: false, text: null },
                            min: min,max: max
                    },
                        {
                            labels: { enabled: false },
                            title: { enabled: false, text: null }
                        },
                        {
                            opposite: true,
                            labels: { style: { color: diffColor } },
                            title: { enabled: false, text: null },
                            min: minD, max: maxD
                        }],
                    series: [{
                            name: "Expected",
                            color: set1Color,
                            type: "line",
                            data: arr[0]
                        },
                        {
                            name: "Delivered",
                            color: set2Color,
                            type: "line",
                            data: arr[1],
                            yAxis: 1
                        },
                        {
                            name: "Difference",
                            color: diffColor,
                            type: "line",
                            data: arr[2],
                            yAxis: 2
                        }]
                });

1 个答案:

答案 0 :(得分:1)

好的,我们走了,docs:

这是以格式设置数据时的工作原理:[val, val, val]。第一个值将得到x = 0;,第二个x = 1等。

如果您想从450开始,请设置series.pointStart = -450,如下所示:

                series: [{
                        name: "Expected",
                        color: set1Color,
                        type: "line",
                        data: arr[0], 
                        pointStart: -450
                    }, ... ]