Highcharts 高度图表Y轴边界忽略楼板/天花板

Highcharts 高度图表Y轴边界忽略楼板/天花板,highcharts,Highcharts,我试图创建一个相当基本的图表,显示一些时间序列数据。数据有时都是正值,有时也有负值。我知道数据的极端值,所以我在y轴上设置了一个上限和一个下限,这样范围就可以保持足够窄,以最大限度地提高数据的分辨率 然而,一旦我有了一些大范围的数据(比如-20到1000),下限值和上限值就会直接从窗口中消失,图表会将y轴的负边界吹到一个巨大的数字,从而消除了数据的大部分分辨率。我尝试过我能想到的最小/最大/最小范围/最小填充/软阈值/地板/天花板等的每一种组合,但我一生都无法得到y轴的最小界限,当存在负值时,它

我试图创建一个相当基本的图表,显示一些时间序列数据。数据有时都是正值,有时也有负值。我知道数据的极端值,所以我在y轴上设置了一个上限和一个下限,这样范围就可以保持足够窄,以最大限度地提高数据的分辨率

然而,一旦我有了一些大范围的数据(比如-20到1000),下限值和上限值就会直接从窗口中消失,图表会将y轴的负边界吹到一个巨大的数字,从而消除了数据的大部分分辨率。我尝试过我能想到的最小/最大/最小范围/最小填充/软阈值/地板/天花板等的每一种组合,但我一生都无法得到y轴的最小界限,当存在负值时,它会保持在-50

请点击此处:

对于前两个注释掉的数据集,一切正常。当存在负值但范围较窄时,y轴显示范围较窄的所有数据。当没有负数据时,y轴的最小界限为0,最大界限为1000。但只要有一个负值和一个较大的正值(第三个数据集),我就得到了y轴的界限为-500和1000。这绝对不是我想要的

希望外面的人有秘密的调味品,能让你保持克制


谢谢

一个简单的解决方案是将
tickInterval:100
添加到您的yaxis中。

您正在努力解决的问题与保持计算出的此类数据的tickInterval恒定有关

查看如何使用此特定数据绘制图表,强制最小值为-50:。使用
yAxis.tickPositions
功能会中断设置tickInterval的逻辑

yAxis: {
  tickPositions: [-50, 0, 250, 500, 750, 1000]
},
API:

我不确定这是否是一个能让你满意的输出。或者,您可以使用tickPositioner回调来根据需要计算tickPositions或增加tickAmount

API:


API:

设置刻度位置并不是我想要的,因为在没有负面数据的情况下,我仍然希望softMin为0。自动滴答定位在大多数情况下都很好,这只是一个奇怪的问题,所以在这里使用滴答定位器回调非常有效,因为我只能在需要时覆盖它。谢谢
yAxis: {
  tickPositions: [-50, 0, 250, 500, 750, 1000]
},