如何在HighChart的y轴上仅显示整数值?

45
我们有一组包含事件实例计数的数据,这些数据只能是整数。当显示具有足够高的y值的数据时,y轴标签是整数。但是,当我们缩放到y=5以下的数据范围时,我们会看到刻度标记显示0.5、0.75、1.5等内容。如何强制y轴标签只显示整数值? 这里 是一个带有一些数据的示例代码。当您缩放到图表的较低值区域时,您就可以看到我所说的内容。 以下是当前的y轴设置:
yAxis: {
  labels: {
    style: {
      fontSize: '9px',
      width: '175px'
    }
  },
  title: {
    text: ''
  }
},
2个回答

129

将y轴中的allowDecimals选项设置为false,以防止显示非整数刻度标记:

yAxis: {
    allowDecimals: false,
    labels: {
        style: {
            fontSize: '9px',
            width: '175px'
        }
    },
    title: {
        text: ''
    }
}

这里有一个演示:http://jsfiddle.net/sBC9K/


@RicardoLohmann,这很有趣 - 这不是HighStock的一个bug吗?是的,我可以看到allowDecimals是一个更完整的答案,但在我的情况下,minTickInterval按照广告运作。 - wergeld
1
@wergeld 这不是一个 bug,我解释了这是因为更高值的 tickinterval 高于 1,它并不能防止大于 1 的数字,只是小于 1 的数字。 - Ricardo Alvaro Lohmann
6
实际上,我同意。 minTickInterval为1并不意味着tickInterval不能是2.5或其他大于1的小数值。这就是在你的例子中出现问题的地方;http://jsfiddle.net/uDg9k/6/。所以,是的,@Asad的答案是正确的。 - Rikonator
好吧,我根本没有设置 tickInterval。而且我也没有在 @RicardoLohmann 提到的示例中看到它被设置。不过,对于我们设置 tickInterval 的图表,我肯定认为这是一个问题。把答案给 Asad。 - wergeld
谢谢!如果您有一个动态的轴值集合,这个方法非常有效。 - Con Antonakos

0
使用 echarts - "4.8.0",您只需要执行以下操作:
options = {
            yAxis: {
              minInterval: 1
            }
          };

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接