Я думаю, что это, вероятно, ошибка.
Проблема не в настройке сетки, а в чертеже каждой оси. В частности, вы устанавливаете 2 оси y, один слева и один справа. Глубоко в коде флота, он решает, нарисовать ли «бар», чтобы привязать тики к основанию, является ли ось «самой внутренней» или нет. Когда у вас есть 2 yaxes, вы неправильно определяете, что ваш правый yaxis равен , а не внутренним, и поэтому рисует галочку.
Соответствующий код, оба бита называются по оси:
В allocateAxisBoxFirstPhase
:
/*note this is only called for axes that have tickLength set
but later it is checked as true/false, not undefined
(which is what you'd get if you set your yaxis tickLength = 0) */
var sameDirection = $.grep(all, function (a) {
return a && a.reserveSpace;
});
innermost = $.inArray(axis, sameDirection) == 0;
В drawGrid
:
if (!axis.innermost) {
//in here it draws the tick bar
}
Обход:
Найти что !axis.innermost
бит и изменить его на axis.innermost == false
. Установите tickLength = 0 во втором яке. Вот и все.
Я реализовал эти два изменения здесь: http://jsfiddle.net/63BPw/5/
Кроме того, FYI я подал ошибку об этом: https://github.com/flot/flot/issues/1056
И ошибка уже исправлена, лучше, чем я предложил :) – Ryley
Большое спасибо за вашей помощи и для решения этой проблемы для github. Я загружу исправленную версию флота сейчас! – Teq1