FLOT клещи округляются - PullRequest
       33

FLOT клещи округляются

0 голосов
/ 04 ноября 2019

Данные для графика на самом деле взяты из номеров образцов. Время измерения известно (0,01998848 с), поэтому выборки умножаются в тикформатере для получения ч: м: с и при увеличении в миллисекундах

Однако, если ось составляет от 0 до 15 секунд (пример), отметка осипоказывает целые числа 1, 3 и т. д. Однако на самом деле они равны 1.990, 3.990 (если я установлю на Fixed (3), я смогу это увидеть). Если я изменю время измерения на округленное значение 0,2, это не проблема, на оси отображаются 2 и 4, как и ожидалось).

Я пробовал tickDecimals, но это не работает. Я думаю, что проблема в том, что FLOT работает с номерами выборок в качестве основы оси, а не с секундами, поэтому четное время измерения 0,2 работает нормально.

Есть идеи?

tickFormatter: function (v, axis) {
var seconds = (v * Dur).toFixed(3);                     
var hh = Math.floor(seconds / 3600);
mm = Math.floor(seconds / 60) % 60;
ss = Math.floor(seconds) % 60;
ms = (seconds % 1).toFixed(3).substring(2);
if ((axis.max * Dur)-(axis.min * Dur) < 10)
return (hh ? (hh < 10 ? "0" : "") + hh + ":" : "") + ((mm < 10) && hh ? "0" : "") + mm + ":" + (ss < 10 ? "0" : "") + ss + "." + ms;
else
return (hh ? (hh < 10 ? "0" : "") + hh + ":" : "") + ((mm < 10) && hh ? "0" : "") + mm + ":" + (ss < 10 ? "0" : "") + ss;
...