Синхронизация перекрестия на нескольких графиках с использованием FLOT - PullRequest
3 голосов
/ 14 февраля 2012

Я пытаюсь синхронизировать перекрестие по трем картам. Я не смог найти ни одного примера, за исключением одного несколько похожего примера, в разделе комментариев файла crosshair.js. Вот фрагмент моего кода, я пытаюсь инициализировать графики здесь. Может кто-нибудь сказать мне, что я делаю не так?

var covariancePlot = $.plot($("#covarianceChartContainer"), [ 0,0 ], {crosshair: { mode: "x" }, xaxis:{ mode: "time"}});
var observationPlot = $.plot($("#observationChartContainer"), [ 0,0 ], {crosshair: { mode: "x" }, xaxis:{ mode: "time"}});
var collisionPlot = $.plot($("#collisionChartContainer"), [ 0,0 ], {crosshair: { mode: "x" }, xaxis:{ mode: "time"}});

$("#covarianceChartContainer").bind("plothover", function (event, pos) {
     //sync crosshairs of the other two plots
     observationPlot.setCrosshair(pos.x);
     collisionPlot.setCrosshair(pos.x);
});
$("#observationChartContainer").bind("plothover", function (event, pos) {
     //sync crosshairs of the other two plots
     covariancePlot.setCrosshair(pos.x);
     collisionPlot.setCrosshair(pos.x);
});
$("#collisionChartContainer").bind("plothover", function (event, pos) {
     //sync crosshairs of the other two plots
     observationPlot.setCrosshair(pos.x);
     covariancePlot.setCrosshair(pos.x);
});

Оказывается, есть две проблемы с приведенным выше кодом, одна из которых является сеткой: {hoverable: true}, оператор отсутствует в опциях для каждого из графиков. Другая функция setCrosshair () ожидает переменную полной позиции, а не только значение x, сохраненное в pos.x. Надеюсь, я могу спасти кого-то еще от разочарования, которое я испытал.

...