我使用Google图表API来显示折线图,但是我需要将数字显示为货币.在图表本身上,我已经能够将数字显示为货币,但是当鼠标悬停在一个点上并且对话框显示时,该数字不会按照指定显示.
<script type="text/javascript"> google.load("visualization","1",{packages:["corechart"]}); google.setOnLoadCallback(drawChart); function drawChart() { var data = google.visualization.arrayToDataTable(<?PHP echo $data; ?>); var options = { chartArea:{left:40,top:10},pointSize: 6,vAxis: {format:'$###,###,###.00'},// Money format legend: {position:'none'} }; var chart = new google.visualization.LineChart(document.getElementById('chart_div')); chart.draw(data,options); } </script>
从该图像可以看出,左边显示的垂直列在上面的代码中使用vAxis.format指定的小数点,但对话框不显示小数或美元符号(我在之后添加了美元符号屏幕截图).
http://i48.tinypic.com/121uznm.jpg
我尝试更新我正在使用的PHP数组,将数据填入货币格式,然后Google图表不会呈现,因为它不是一个简单的数字.
现在有一种用于为单元格指定原始值和格式化值的格式[1]:将值加载到图表中,而不是例如. addRow([‘2012-08-31,4]);这将是addRow([‘2012-08-31′,{v:4,f:’$4.00’}]);该语法的更多示例将通过文档进行填充,但是找不到一个可以链接到该文档的好地方.不应该太难以更改生成示例中的$data对象以包含该格式的方法,但也有其他格式选项.
如果您希望在JS中定义该格式,则可以使用NumberFormatter.
[1]当我第一次开始使用图表工具时,我不认为他们有这种语法.不知道什么时候添加,但是,如果我从来没有注意到,直到最近.