在dc.js / d3图表中格式化y轴上的值

时间:2016-08-17 01:32:11

标签: javascript d3.js dc.js

我试图缩短Y轴上的值,目前它们显示为:

Example

虽然我可以使用填充,但我希望Y轴以这种方式显示:

100,000 = 100k
200,000 = 200k

等等

附上我的代码。

var paidSubChart = dc.lineChart("chart1")
.width(450)
.height(300)
.elasticX(true)
.x(d3.scale.linear().domain([-30,N]))
.elasticY(true)
.brushOn(false)
.yAxisLabel("Paid Subs")
.xAxisLabel("Days Since Launch")
.dimension(dayCountDimension)
.group(paidSubGroup);

var expansionActChart = dc.lineChart("chart2")
.width(450)
.height(300)
.elasticX(true)
.x(d3.scale.linear().domain([0,N]))
.elasticY(true)
.brushOn(false)
.yAxisLabel("Paid Subs")
.xAxisLabel("Days Since Launch")
.dimension(dayCountDimension)
.group(expActGroup);

1 个答案:

答案 0 :(得分:3)

dc.js中的轴由d3.js。

提供

我认为你正在寻找

chart.yAxis().tickFormat(d3.format('.3s'))

调用d3.axis.tickFormat并使用d3.format" SI前缀"。

注意:最好将轴操作保留在单独的语句中,因为stuff breaks if you try to chain other dc.js chart commands after a yAxis command