【问题标题】:Rounding off values displayed on chart舍入图表上显示的值
【发布时间】:2015-07-06 18:02:39
【问题描述】:

我有一个带有硬编码值的简单 c3 图表。

这是我创建的图表的代码

var chart = c3.generate({
    data: {
        columns: [
            ['Data A', 50],
            ['Data B', 50],
        ],
        type : 'donut'

    },

});

由于某种原因,在我的图表上,该值显示为 50.0%,我希望它仅显示为 50%。我想将我的值四舍五入为整数。

我什至尝试这样做['Data A', Math.round(50)],,但没有运气。请指教。这是我的FIDDLE

【问题讨论】:

    标签: javascript rounding


    【解决方案1】:

    我更新了你的小提琴here

    关键是你必须格式化你的输出而不是四舍五入你的输入。

    donut: {
        label: {
            format: function (value) {
                return d3.format('.0')(value)+'%';
            }
        }
    }
    

    此代码将给定值格式化为整数,并在添加到 c3.generate 参数时添加一个“%”。

    【讨论】:

    • 这很好,但如果我有 50.5% 之类的东西,但我仍然想四舍五入怎么办?
    • 我想我会做return d3.format('.0f')(value)+'%'; 对吧?
    • 这就是要走的路;)
    【解决方案2】:

    尝试使用 d3.round(50) 。这应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-21
      • 1970-01-01
      • 2015-12-11
      • 2022-07-07
      • 2020-12-07
      • 1970-01-01
      相关资源
      最近更新 更多