Удалить десятичные значения с оси - PullRequest
0 голосов
/ 01 июня 2018

Я использую диаграммы Google, и у меня возникла проблема с форматированием hAxis.Это выглядит так, когда на нем только 4 значения:

enter image description here

Я хочу удалить эти десятичные числа между действительными значениями.Я не хочу, чтобы это показывало 0.5,1.5,2.5,3.5 Как это можно сделать?

1 Ответ

0 голосов
/ 01 июня 2018

есть несколько вариантов, которые можно использовать, если вы используете классический график
, но они не поддерживаются при использовании материала графиков

васможно использовать опцию hAxis.format для изменения формата чисел,
, но это приведет к удалению только десятичной дроби и приведению к повторению чисел

. Единственный метод, который я нашел при использовании matieral chart,
- использовать строковые значения для оси X ...

['Lesson', 'Average', 'Average best'],
['1', 10, 10],
['2', 10, 10],
['3', 10, 10],
['4', 7, 7.5]

или вы можете использовать DataView для преобразования чисел в строки ...

var data = google.visualization.arrayToDataTable([
  ['Lesson', 'Average', 'Average best'],
  [1, 10, 10],
  [2, 10, 10],
  [3, 10, 10],
  [4, 7, 7.5]
]);

var view = new google.visualization.DataView(data);
view.setColumns([{
  calc: function (dt, row) {
    return dt.getValue(row, 0).toFixed(0);
  },
  label: data.getColumnLabel(0),
  type: 'string'
}, 1, 2]);

см. Следующий рабочий фрагмент ...

google.charts.load('current', {
  packages: ['bar']
}).then(function () {
  var data = google.visualization.arrayToDataTable([
    ['Lesson', 'Average', 'Average best'],
    [1, 10, 10],
    [2, 10, 10],
    [3, 10, 10],
    [4, 7, 7.5]
  ]);

  var view = new google.visualization.DataView(data);
  view.setColumns([{
    calc: function (dt, row) {
      return dt.getValue(row, 0).toFixed(0);
    },
    label: data.getColumnLabel(0),
    type: 'string'
  }, 1, 2]);

  var options = {
    chart: {
      title: 'Results distribution by lesson',
    },
    height: 280
  };

  var chart = new google.charts.Bar(document.getElementById('chart_div'));
  chart.draw(view, google.charts.Bar.convertOptions(options));
});
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
...