Подтвердить что ты не робот

Установка значения жесткой минимальной оси в API графиков Google

Я пытаюсь создать диаграмму Google, чтобы показать процентное соотношение времени простоя и времени простоя. Это отлично работает, за исключением одной маленькой вещи - я бы хотел, чтобы базовая линия диаграммы была на уровне 99,8, а максимальная - 100, поскольку простои обычно меньше 0,2. Это сделает диаграмму доступной.

Мне это показалось достаточно простым. Я решил, что это сработает:

var data = new google.visualization.DataTable();
data.addColumn('string', 'Date');
data.addColumn('number', 'Uptime');
data.addColumn('number', 'Downtime');
data.addRows([
  ['Dec 1, 1830',   99.875, 0.125],
  ['Dec 8, 1830',   99.675, 0.325],
  ['Dec 15, 1830',  99.975, 0.025],
  ['Dec 22, 1830',  100.0,  0.0]
]);

var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
chart.draw(data, {width: 400, height: 240, isStacked: true, vAxis: { title: "Percentage Uptime", minValue: 99.8, maxValue: 100}});

К сожалению, диаграмма полностью игнорирует minValue на vAxis. По-видимому, это ожидаемое поведение, согласно API, но это оставляет вопрос - как бы я это выполнил? Я даже зашел так далеко, чтобы преобразовать данные, т.е. Вычесть 99,8 из всех значений времени безотказной работы и просто перевести диаграмму с 0 на .2, и это выливает график, который выглядит нормально, но я не могу применить метки на вертикальную ось, которые скажут 99,8, 99,85, 99,9, что угодно - ось говорит, довольно послушно, 0 внизу, и .2 наверху, и, похоже, нет никакого способа исправить это направление. Любое решение было бы приемлемым, я уверен, что НЕКОТОРЫЙ способ сделать эту работу?

4b9b3361

Ответ 1

вам нужно установить viewWindow следующим образом:

var data = new google.visualization.DataTable();
data.addColumn('string', 'Date');
data.addColumn('number', 'Uptime');
data.addColumn('number', 'Downtime');
data.addRows([
 ['Dec 1, 1830',   99.875, 0.125],
  ['Dec 8, 1830',   99.675, 0.325],
  ['Dec 15, 1830',  99.975, 0.025],
  ['Dec 22, 1830',  100.0,  0.0]

]);

var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
chart.draw(data,
           {width: 400, 
            height: 240, 
            isStacked: true,
            vAxis: { 
              title: "Percentage Uptime", 
              viewWindowMode:'explicit',
              viewWindow:{
                max:100,
                min:99.8
              }
            }
            }                 
          );

//отредактирован для более новой версии api

Ответ 2

У меня была аналогичная проблема, и мне нужно было указать свойство как "мин", а не "minValue"

vAxis: { 
    viewWindowMode:'explicit',
    viewWindow: {
        max:100,
        min:99.8
    }
}