Здравствуйте.
Мне нужно построить точки на графике трех типов:
- серые кружочки;
- белые кружочки;
- серые квадратики;
И чтобы фигуре начиная с некоторого номера, рисовался номер точки.
В документации к flot (
http://flot.googlecode.com/svn/trunk/API.txt) говорится о том, что можно поменять вывод точек на графике, например так
function grect(ctx, x, y, radius, shadow)
{
ctx.beginPath();
ctx.fillStyle = "#999";
ctx.fillRect(x - size, y - size, 2*size, 2*size);
ctx.strokeStyle = '#000';
ctx.strokeRect(x - size, y - size, 2*size, 2*size);
}
series.points.symbol = grect;
Я создал три объекта series, и у каждого своя функция отрисовки точек:
series[0].points.symbol = gcircle;
series[1].points.symbol = wcircle;
series[2].points.symbol = grect;
Можно ли как нибудь передать в эту функцию отрисовки свою переменную (номер точки)?
Я пробовал:
- через глобальную переменную - счетчик, но при наведении на точку счетчик инкрементируется и пишет другой номер.
- через глобальный массив, куда запоминал координаты точек и их номера, но тоже не помогло, поскольку объектов siries три штуки, и номера сбиваются.
Подскажите, как можно решить эту проблему?
И можно ли у одного siries у разных точек задавать разные функции отрисовки? Например, половина квадратиков, а половина кружочков.
Заранее спасибо.