使用此示例中显示的堆积面积图 http://nvd3.com/ghpages/stackedArea.html
尝试将y轴刻度标签和工具提示标签格式化为整数而不是浮点数。尝试更改以下代码
chart.yAxis
.axisLabel('Users')
.tickFormat(d3.format(',.2f'));
到
chart.yAxis
.axisLabel('Users')
.tickFormat(d3.format(',.0d'));
精度保持不变(仍然显示值到百分之一的位置)。我跟随Github Wiki无济于事https://github.com/mbostock/d3/wiki/Formatting#wiki-d3_format
非常感谢任何建议或提示。
答案 0 :(得分:24)
目前看起来像this isn't supported by nvd3。请参阅有问题的line。
此外,您的格式规范并不完全正确。如文档中所述,"d"
忽略非整数值。所以你可能想要",.0f"
,这意味着:
,
:使用逗号分隔数千个。.0
:精度为零(具体含义取决于正在使用的类型)。f
:类型;在这种情况下,Number.toFixed。这意味着在小数点后面会出现一个固定的位数(精度),如有必要,该数字将被舍入。答案 1 :(得分:4)
这个可以将标签文本从float格式化为整数。
饼图的:
chart.pie.valueFormat(d3.format(',.0d'));
表示折线图:
chart.yAxisTickFormat(d3.format(',.0d'));
答案 2 :(得分:3)
.tickFormat
方法上的.yAxis
方法无法正确更新。这是我使用的工作:
chart.yAxisTickFormat(d3.format(',.0d'));
答案 3 :(得分:3)
我试过这样的
.axisLabel('%').tickFormat(function(d) { return parseFloat(d).toFixed(1) + "%"; });
它为我工作。我得到小数点和百分比的结果。