charts - 用 格式化数字。作为千位分隔符并且没有小数

标签 charts google-visualization

我已经在这里检查过:
https://groups.google.com/forum/#!topic/google-visualization-api/4qCeUgE-OmU
https://developers.google.com/chart/interactive/docs/querylanguage#Format
https://developers.google.com/chart/interactive/docs/reference#numberformatter

我想在使用 Google Charts 绘制的图表中显示 x 轴上的数字,不带小数,并使用 . 作为千位分隔符。

var options = {
    hAxis: {
        title: 'Month'
    },
    vAxis: {
        title: 'Price (€)', format: '#.###'
    }
};

因此 3200 应显示为 3.200

我已经尝试过 format 变量:

#.#
#.###
#

最佳答案

由于format选项在这种情况下不起作用,
您可以为 vAxis 提供自己的刻度...

为每个刻度使用对象符号

{
   v: value,
   f: formattedValue
}

使用谷歌的NumberFormat class ...

var formatNumber = new google.visualization.NumberFormat({
  fractionDigits: 0,
  groupingSymbol: '.'
});

使用formatValue方法格式化每个刻度

请参阅以下工作片段...

google.charts.load('current', {
  callback: function () {
    var data = new google.visualization.DataTable();
    data.addColumn('number', 'x');
    data.addColumn('number', 'y');
    data.addRows([
      [1, 3000],
      [2, 3100],
      [3, 3200],
      [4, 3300],
      [5, 3400],
    ]);

    var formatNumber = new google.visualization.NumberFormat({
      fractionDigits: 0,
      groupingSymbol: '.'
    });

    var columnRange = data.getColumnRange(1);
    var ticks = [];
    for (var i = columnRange.min; i <= columnRange.max; i=i+100) {
      ticks.push({
        v: i,
        f: formatNumber.formatValue(i)
      });
    }

    var options = {
      hAxis: {
        title: 'Month'
      },
      vAxis: {
        ticks: ticks,
        title: 'Price (€)'
      }
    };

    var container = document.getElementById('chart');
    var chart = new google.visualization.LineChart(container);
    chart.draw(data, options);
  },
  packages: ['corechart']
});
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart"></div>

关于charts - 用 格式化数字。作为千位分隔符并且没有小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45740921/

相关文章:

javascript - Google 可视化多重查询(电子表格)

jquery - Bootstrap - 将远程 Google Chart 加载到 Modal 中

ruby-on-rails - 在 Ruby on Rails 中使用 chartkick 自定义工具提示

javascript - 使用 Highcharts 制作的折线图在 Xaxis 上显示时间

php - 如何从 ajax 调用获取图表数据到 javascript

javascript - 为什么这个 Javascript 图表不能工作两次?

javascript - 如何在 Highcharts 散点图中的工具提示中隐藏系列名称以进行线性回归

javascript - 如何更改 Google Charts API 中堆叠条形图的部分颜色?

javascript - 将 Javascript(Google Visualization API)与 Drupal Form API 结合使用

javascript - 根据条件检查分配 $scope.chart.options - javascript