【问题标题】:How to set custom width of bar in NDV3 Discreate bar chart如何在 NDV3 Discreate 条形图中设置自定义条形宽度
【发布时间】:2013-03-01 05:17:41
【问题描述】:

我正在尝试使用 nvd3 图表构建垂直条形图。

问题: 如果图表有单条记录,条形宽度达到图表宽度的 3/4。

问题: 如何更改离散条形图中条形的宽度?

附上图表请指导我..

【问题讨论】:

    标签: javascript charts bar-chart nvd3.js


    【解决方案1】:

    如果您查看源代码here。您会看到矩形的宽度是根据使用rangeBand 的项目数计算的。似乎没有办法通过库的 API 设置矩形的宽度。

    如果您不想修补库,可以创建额外的零数据假条,并提供一个标签格式化程序,如果值为零,它将返回一个空字符串,但假设零不是您数据集中的有效数字。

    【讨论】:

    • 这是一个很好的解决方案@WolfgangCodes!但我不明白为什么有人想要一个只有一个数据的图表。
    • @WellingtonZanelli,恐怕只有莫汉能回答这个问题。
    • 有时,您正在向下钻取分层数据的不同级别,而叶或中间级别可能只有一项。在那种情况下,图表最终是这样的
    【解决方案2】:

    使用以下代码设置宽度

    dispatch: {
        renderEnd: function (e) {
            d3.selectAll("rect.nv-bar").attr('rx', 4).attr('ry', 4).attr('width', 15)
        }
    }
    

    或者你可以使用

    groupSpacing : 0.57,
    

    【讨论】: