如何在 nvd3 中的 Y 轴上设置自定义刻度和标签

Howto set custom ticks and labels on Y axis in nvd3

我想为我在 nvd3 中完成的离散图表设置自定义刻度编号和标签。问题是标签和值需要以 10:1、8:1 等比率显示,但实际条形高度显示为数字 10、8 等。有没有办法在 y 轴上创建自定义标签并在 nvd3 中将鼠标悬停在工具提示上?

您可以使用 tickFormat(这实际上是原始 D3 方法)执行此操作:

chart.yAxis
    .tickFormat(function (d) {
        return  d + ':' + 1;
    });

NVD3 将在工具提示中自动使用该格式。

如果您想单独编辑工具提示内容,可以使用 tooltipContent 方法(可能会添加其他方法 in the next release of NVD3)。

chart.tooltipContent(function (key, x, y, e, graph) {
    return '<h3>' + key + '</h3>' +
        '<p>' +  y + ' on ' + x + '</p>';
});

this Plunker