Вы не можете сделать этого, потому что case
маркировки являются на самом деле просто точками входа в содержание блока.
Это наиболее ясно проиллюстрировано устройство Вареного пудинга . Вот некоторый код из Википедии:
strcpy(char *to, char *from, size_t count) {
int n = (count + 7) / 8;
switch (count % 8) {
case 0: do { *to = *from++;
case 7: *to = *from++;
case 6: *to = *from++;
case 5: *to = *from++;
case 4: *to = *from++;
case 3: *to = *from++;
case 2: *to = *from++;
case 1: *to = *from++;
} while (--n > 0);
}
}
Уведомление, как case
маркировки полностью игнорируют границы блока. Да, это является злым. Но это - то, почему Ваш пример кода не работает. При переходе к case
маркировка совпадает с использованием goto
, таким образом, Нельзя перепрыгнуть через локальную переменную с конструктором.
, Поскольку несколько других плакатов указали, необходимо вставить собственный блок:
switch (...) {
case FOO: {
MyObject x(...);
...
break;
}
...
}
Вот как я добавил эту функцию, включая приятный эффект анимации:
var p = $.plot(...);
$.each(p.getData()[0].data, function(i, el){
var o = p.pointOffset({x: el[0], y: el[1]});
$('<div class="data-point-label">' + el[1] + '</div>').css( {
position: 'absolute',
left: o.left + 4,
top: o.top - 43,
display: 'none'
}).appendTo(p.getPlaceholder()).fadeIn('slow');
});
Вы можете перемещать позицию и отображать CSS в таблице стилей.
Требуемая функция запрашивается здесь в группе Flot Google. Не похоже, что это когда-либо реализовывалось (в API нет ничего, что могло бы помещать какие-либо метки внутри самой диаграммы). Я думаю, что ответ на ваш вопрос заключается в том, что нет, в настоящее время невозможно отображать значения рядом с определенными точками на линиях внутри графика.
Оле Ларсон, главный разработчик компании Flot, отметил, что отображение меток внутри диаграммы является отличается от всего остального на FLot, и что им придется подумать о том, как расширить параметры API / графика, чтобы сделать это.
Тем не менее, вы можете задать вопрос на форуме Flot или внести предложение в трекер ошибок для новой функции. Оле Ларсон действительно хорошо умеет отвечать на все вопросы, ошибки и предложения.
Если кто-то еще ищет быстрое решение, см. Этот плагин:
http://sites.google.com/site/petrsstuff/projects / flotvallab