我正在使用Google Visualization API中的GeoChart来创建包含网站使用信息的动态地图。由于大的度量值(8位数),我需要用逗号分隔这些数字以使地图更具可读性。我编写了一个为这些数字添加逗号的函数,但这会导致绘制地图的API出错。
例如,当逗号分隔3列数据中的1列(国家/地区,访问次数,唯一身份访问者)时,该列的标签将在国家/地区工具提示中删除。逗号分隔2列然后导致整个地图失败,并出现“期望2列”错误。这必须是由于数字字符串中的逗号未被转义,因此导致JSON数组中的错误。我尝试插入'\,'
而不是常规逗号无效。任何工作或解决方案?
答案 0 :(得分:5)
退一步我认为解决问题的更好方法是使用名为google.visualization.NumberFormat的Google可视化中的NumberFormat类格式化原始数据。更多信息:google.visualization.NumberFormat
以下是如何格式化第二列以将逗号作为分组分隔符的示例:
function drawVisualization() {
var data = google.visualization.arrayToDataTable([
['Country', 'Popularity'],
['Germany', 200],
['United States', 300],
['Brazil', 400],
['Canada', 500],
['France', 60000000000000000],
['RU', 700]
]);
var formatter = new google.visualization.NumberFormat({pattern:'###,###'} );
formatter.format(data, 1);
var geochart = new google.visualization.GeoChart(
document.getElementById('visualization'));
geochart.draw(data, {width: 556, height: 347, tooltip: {textStyle: {color: 'blue', fontName: 'Tahoma', fontSize: '15'}}});
}
我使用google visualization playground来测试它。
祝你好运!上帝保佑!
更新:修改了geochart.draw行以包含工具提示文字样式。它将为工具提示中的所有文本设置样式。我还没有看到做出精细的谷物定制。以下是更多信息:Geochart Configuration Options
答案 1 :(得分:1)
根据CSV文件格式的官方规范,可以通过用双引号包装数据来包括数据中的逗号。
可以引用任何字段(即包含在双引号字符中)。必须引用某些字段,如以下规则中所述。
"1997","Ford","E350"
必须引用包含逗号的字段。
1997,Ford,E350,"Super, luxurious truck"