我有以下图表配置:
nv.addGraph(function() {
var chart = nv.models.cumulativeLineChart()
.x(function(d) { return d.x.getTime() })
.y(function(d) { return d.y })
.color(d3.scale.category10().range());
chart.xAxis
.axisLabel('Período')
.tickFormat(function(d) {
return d3.time.format("%m/%y")(new Date(d));
});
chart.yAxis
.axisLabel('Rentabilidade')
.tickFormat(function(d) {
return (d * 100).toFixed(2) + '%';
});
d3.select('#profitability-chart')
.datum(data)
.transition().duration(500)
.call(chart);
return chart;
});
问题是图表中的每个最后一点都显示了不同的格式y
值。例如:
图表上的“Foo”行:
- 最后一点显示“36%”
- 检查
data
数组,
- y = 1.7205607426554128
- 显示.y = 0.3602803713277064
这是数据样本。
我不知道这个display.y来自哪里,以及这个值是如何计算的。我以为d3.format
是在更改实际值,所以我切换到了手动 tickFormat,但问题仍然存在。
PS.:我也在使用 angular.js。