highcharts 在 1024 中舍入生成的 y 标签,而不是 1000

Posted

技术标签:

【中文标题】highcharts 在 1024 中舍入生成的 y 标签,而不是 1000【英文标题】:highcharts round generated y labels in 1024 multiply not 1000 【发布时间】:2020-02-03 11:28:09 【问题描述】:

我有一个带有示例data: [1462218035, 2079623792, 2146097338, 2169087177] 的图表,在 y 轴标签中我将其转换为人类可读的字节:

yAxis: 
    labels: 
    usehtml: true,
    formatter: function () 
        return bytesToReadable(this.value, true);
    ,
  ,

bytesToReadable 将字节转换为人类可读的数据:1,36 GB - 1,94 GB - 2 GB 并显示 y 标签,例如:953,67 MB - 1,86 GB - 2,79 GB 这些是由 bytesToReadable 转换的 2,000,000,000 - 4,000,000,000 - 6,000,000,000。我想要的是由 highcharts 生成的2,000,000,000 - 4,000,000,000 - 6,000,000,000 在转换后乘以 1024 为正确的数字,如@9​​87654328@。

【问题讨论】:

你能试着澄清你想要什么吗?例如给定数据:2,000,000,000 - 4,000,000,000 - 6,000,000,000 highcharts 给出/显示的内容与您想看到的内容? @depperm 它在标签中显示953,67 MB - 1,86 GB - 2,79 GB,我想要100 MB - 1GB - 4GB 如何从 953,67MB 变为 100MB?你是说1GB吗?为什么 1.86GB 变成 1GB 而 2.76GB 变成 4GB?那是我不明白的 @depperm 不,这只是一个示例,我只是希望这些数字是不带小数的四舍五入数字。 所以向我们展示 bytesToReadable 的代码并查看this answer 【参考方案1】:

使用tickInterval属性:

yAxis: 
  tickInterval: 1024


现场演示: http://jsfiddle.net/BlackLabel/6m4e8x0y/4806/

API 参考: https://api.highcharts.com/gantt/yAxis.tickInterval

【讨论】:

以上是关于highcharts 在 1024 中舍入生成的 y 标签,而不是 1000的主要内容,如果未能解决你的问题,请参考以下文章

如何在 MySQL 中舍入 DateTime?

在 Java 中舍入一个双精度数

如何在动作脚本中舍入数字

如何在电报中舍入输出值?

scss 在Sass中舍入小数

scss 在Sass中舍入小数