php - Google Visualization API 中的逗号分隔数据

标签 php javascript jquery json google-visualization

我正在使用 Google Visualization API 中的 GeoChart 创建包含网站使用信息的动态 map 。由于度量值很大(8 位数字),我需要用逗号分隔这些数字以使 map 更具可读性。我编写了一个向这些数字添加逗号的函数,但这会导致绘制 map 的 API 出错。

例如,当逗号分隔 3 列数据(国家/地区、访问次数、唯一身份访问者)中的 1 列时,该列的标签将在国家/地区工具提示中删除。逗号分隔 2 列然后导致整个 map 失败,并出现“预期 2 列”错误。这一定是由于数字字符串中的逗号没有被转义,从而导致 JSON 数组出错。我尝试插入 '\,' 而不是常规逗号,但无济于事。有任何解决方法或解决方案吗?

最佳答案

退后一步,我认为解决问题的更好方法是使用谷歌可视化中名为 google.visualization.NumberFormat 的 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

关于php - Google Visualization API 中的逗号分隔数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11558645/

相关文章:

javascript - 无法使用 Javascript 从 div 中删除类

javascript - 将 JSON 数组从 Django View 返回到模板

javascript - 我可以简化多个 if - else 语句吗?

javascript - jQuery - 通过 Id 获取动态 (*) 元素并放入数组

javascript - 无按钮自动日期计算器

php - 带有随机图像的 3x3 表格 - PHP

javascript - 必须正确处理 Promise 错误

jquery - 为不同节点类型配置jstree右键上下文菜单

php - 使用 preg_replace 删除 unicode 字符,但保留所有特殊字符和英文字符

php - Laravel Join 返回重复数据