我想在d3.js中更改日期和数字格式。
我使用下面的代码来生成图表。
collectionRate.width(940)
.height(250)
.dimension(collectionRateValue)
.group(collectionRateValueGroup_payment, "Payment")
//.stack(collectionRateValueGroup_adj, "count")
.stack(collectionRateValueGroup_ar_bal, "charge amt")
.title(function(d) {
return ": ";
})
.renderTitle(true)
.transitionDuration(1500)
.margins({
top: 10,
right: 50,
bottom: 30,
left: 70
})
.centerBar(true)
.gap(10)
.xAxisPadding(500)
.xUnits(d3.time.months)
.label(function(d){
return "d.key";
})
.round(d3.time.month.round)
.x(d3.time.scale().domain([new Date(2012, 11, 1), new Date(2013, 12, 31)]))
//.x(d3.scale.linear().domain([-1, 10000]))
.legend(dc.legend().x(750).y(0))
.elasticY(true)
dc.renderAll();
dc.redrawAll();
d3.select("#dc-pie-graph > svg > g").attr("transform", "translate(100,100)");
代码结果如下。
现在,我想要什么 我想将Y轴值格式500,000更改为50K,与其他格式相同。 目前,X轴值是1月,2月....我想将其更改为1月13日。
我试过但是我无法成功改变格式。
答案 0 :(得分:1)
您可以使用.tickFormat()
function执行此操作,例如对于x轴:
.xAxis().tickFormat(d3.time.format("%b-%d"));
您目前正在四舍五入到整个月(.round(d3.time.month.round)
),您可能希望将其删除。对于y轴,它看起来像这样:
.yAxis().tickFormat(d3.format(",.0s"));