Javascript 使用amCharts设置labelText的格式
我正在尝试用amCharts格式化数字。 我希望将数字的格式设置为精度为2,但在插入时:Javascript 使用amCharts设置labelText的格式,javascript,jquery,charts,amcharts,Javascript,Jquery,Charts,Amcharts,我正在尝试用amCharts格式化数字。 我希望将数字的格式设置为精度为2,但在插入时: graph.numberFormatter = {precision:2, decimalSeparator:'.', thousandsSeparator:','}; 它仅格式化工具提示中的数字,正如您在图像上看到的,并非所有数字都已格式化 graph.labelText = "[[coding]] €"; 如何格式化labelText 谢谢 不要直接引用您的“valueField”。而是使用内置标
graph.numberFormatter = {precision:2, decimalSeparator:'.', thousandsSeparator:','};
它仅格式化工具提示中的数字,正如您在图像上看到的,并非所有数字都已格式化
graph.labelText = "[[coding]] €";
如何格式化labelText
谢谢 不要直接引用您的“valueField”。而是使用内置标记[[value]]。所以你的例子会变成
graph.labelText = "[[value]] €";
在我的案例中,我在使用时遇到了完全相同的问题
"graphs" : [{
"labelText" : "[[s1]]",
"valueField" : "s1",
...
}
],
改成
"graphs" : [{
"labelText" : "[[value]]",
"valueField" : "s1",
...
}
],
成功了。这是我的建议:
"graphs":[{
"labelText":"[[value]]",
"labelFunction": function(graphDataItem, graph){
var value = graphDataItem.values.value;
value = formatTextLabel(value);
return value;
}
}]
formatTextLabel是一个函数,例如:
function formatTextLabel(value){
value = value.toString();
var pattern = /(-?\d+)(\d{3})/;
while (pattern.test(value))
value = value.replace(pattern, "$1,$2") + "$";
return value;
}