1

这是一个带有样条系列的 Highcharts 图表。xAxis 最大值设置为 9405,如下图所示:http: //jsfiddle.net/Bridgeland/253gq/1/

X 轴最大值为 9405,符合预期

当我添加一个列系列,并使用 pointRange 和 pointInterval 将其与样条线对齐时,X 轴的实际最大值似乎增加到大约 11000,正如您在这个小提琴中看到的那样:http: //jsfiddle.net/Bridgeland /5nq4q/

有效X轴最大约11000

第一个系列没有8620以上的数据,第二个系列也没有8360以上的数据。那么为什么 HighCharts 会增加 X 轴的有效最大值呢?我该如何控制呢?

(你可能想知道为什么我这么关心真正的最大值是多少。如果我只有一个样条线和一个列序列来对齐,这不会是一个大问题。但在实际应用中,我有第二个样条线不同的xAxis和不同的比例,我需要对齐两个样条线的比例。我通过设置每个xAxis的最大值来做到这一点,但是当Highcharts覆盖我设置的最大值时,我的对齐方式就偏离了。)

对应于第二个小提琴的代码,即显示问题的代码:

$(function () {
    $('#container').highcharts({
        chart: {
            alignTicks: false
        },
        yAxis: {
            min: 0,
            max: 1 
        },
        xAxis: {
            min: 0, 
            max: 9405
        },
        legend: {
            enabled: false
        },
        credits: {
            enabled: false
        },
        series: [{
            type: 'spline',
            marker: {
                enabled: false
            },
            zIndex: 1,
            data: [
                [0, 1],
                [215.5115677836167, 1],
                // much data omitted
                [8620.462711344668, 0]
            ]
        }, {
            type: 'column',
            pointPadding: 0.01,
            groupPadding: 0,
            borderWidth: 0,
            shadow: false,
            pointPlacement: 'between',
            zIndex: 0,
            minPointLength: 3, 
            data: [1, 0.8303045243052317, 0.507000086078798, 0.3012666720025181, 0.15608877940134103, 0.07002459966684138, 0.04309138172365523, 0.014811084204643832],
            pointRange: 1045,
            pointInterval: 1045
        }]
    });
});

感谢您对此的帮助。正如我的一个朋友所说,stackoverflow 是互联网上最有用的网站。它不是网站,真的,是你。

4

1 回答 1

0

与事实相关的是,highcharts 需要定期计算刻度位置。所以我建议修改tickInterval 或者使用tickPositions/tickPostioner。

http://api.highcharts.com/highcharts

于 2013-07-08T13:00:18.697 回答