Javascript HighCharts点范围平移宽度。这是HighCharts的错误还是我遗漏了什么?

Javascript HighCharts点范围平移宽度。这是HighCharts的错误还是我遗漏了什么?,javascript,highcharts,Javascript,Highcharts,我有一个结合了样条线和列的HighCharts图表。列数据定义单个Y值——表示单个列——并使用pointRange指示单个列所覆盖的X值范围。只要pointRange小于样条曲线数据中的最大X值,一切都正常。但是,当点范围大于样条曲线数据中的最大X值时,HighCharts会从根本上截断点范围,例如,从我想要的10000到大约4200,大约是最大X值的一半。标签也会从根本上向左移动,就好像该列对于小于0的X值具有显著范围,而我传递的数据中不存在这些值 (我想发布问题的快照,但我的声誉不足。) 这

我有一个结合了样条线和列的HighCharts图表。列数据定义单个Y值——表示单个列——并使用pointRange指示单个列所覆盖的X值范围。只要pointRange小于样条曲线数据中的最大X值,一切都正常。但是,当点范围大于样条曲线数据中的最大X值时,HighCharts会从根本上截断点范围,例如,从我想要的10000到大约4200,大约是最大X值的一半。标签也会从根本上向左移动,就好像该列对于小于0的X值具有显著范围,而我传递的数据中不存在这些值

(我想发布问题的快照,但我的声誉不足。)

这是HighCharts的错误,还是我遗漏了什么?贝耶斯当然建议后者,但我不能确定我遗漏了什么。因此,这一要求的神

这里有一把小提琴说明了我的问题:如果你把pointRange从10000改为8000,你可以看到我预期的结果,尽管列稍微小一些

以下是我的代码,为了简洁起见,省略了很多数据:

$(function () {
    $('#container').highcharts({
        title: {
            text: 'pointRange is too small'
        },
        yAxis: {
            min: 0,
            max: 1
        },
        xAxis: {
            min: 0
        },
        legend: {
            enabled: false
        },
        credits: {
            enabled: false
        },
        series: [{
            data: [
                [0, 1],
                [215, 1],
                // middle of spline data omitted for brevity
                [8189, 0.007198560287942413],
                [8404, 0],
                [8620, 0]
            ],
            type: 'spline',
            marker: {
                enabled: false
            },
            zIndex: 1
        }, {
            data: [0.5],
            type: 'column',
            pointInterval: 10000,
            pointPadding: 0.01,
            groupPadding: 0,
            borderWidth: 0,
            shadow: false,
            pointPlacement: 'between',
            pointRange: 10000,
            zIndex: 0,
            minPointLength: 3,
            dataLabels: {
                enabled: true,
                inside: true,
                color: 'white',
                formatter: function () {
                    return 'Misplaced'
                }
            }
        }]
    })
})

(你可能想知道为什么我的柱状图只有一列?我的图表通常有更多的列。对于特定的数据组合,这一列是一种病理情况。但是,尽管有病理情况,我还是希望它能够正确显示。)

你不能将xAxis max设置为10500吗?这不允许列扩展到10k吗?

似乎Highcharts不允许点范围大于
x
中的最大值或
minRange

您可以通过执行以下操作来解决此问题:

$(function () {
    $('#container').highcharts({
        title: {
            text: 'pointRange is too small'
        },
        yAxis: {
            min: 0,
            max: 1
        },
        xAxis: {
            min: 0,
            minRange: 10000
          //^^^^^^^^^^^
        },
        legend: {
            enabled: false
        },
        credits: {
            enabled: false
        },
        series: [{
            data: [
                [0, 1],
                [215, 1],
                // middle of spline data omitted for brevity
                [8189, 0.007198560287942413],
                [8404, 0],
                [8620, 0]
            ],
            type: 'spline',
            marker: {
                enabled: false
            },
            zIndex: 1
        }, {
            data: [0.5],
            type: 'column',
            pointInterval: 10000,
            pointPadding: 0.01,
            groupPadding: 0,
            borderWidth: 0,
            shadow: false,
            pointPlacement: 'between',
            pointRange: 10000,
            zIndex: 0,
            minPointLength: 3,
            dataLabels: {
                enabled: true,
                inside: true,
                color: 'white',
                formatter: function () {
                    return 'Misplaced'
                }
            }
        }]
    })
})
既然您将
pointInterval
设置为10000,我想您可以对
minRange
值执行相同的操作