2013-03-28 4 views
4

Я создаю пользовательскую легенду для своей круговой диаграммы Google, потому что мне нужно немного больше контроля.Trigger slice mouseover на Google Интерактивный график

Я бы хотел, чтобы моя легенда взаимодействовала с графикой точно так же, как и по умолчанию. Я могу добавить слушатель моих условных обозначений строк, выбрать соответствующий фрагмент как:

myChart.setSelection([{row: selectedIdx]); 

Это вызывает срез, чтобы выбрать, как будто я нажал на кусок, то есть, она делает жесткую линию на несколько пикселей от ломтика.

Это нормально, но то, что я действительно хочу, это реплицировать курсор мыши, т. Е. Просто «выделить» среза.

Я думал, что диаграмма может прослушивать мышь, а затем изучить событие, чтобы определить, какой срез выделить, поэтому я подключил к нему прослушиватель onmouseover. Это казалось правильным, потому что, когда я наведении мышки на кусок пирога, то даже принятый в был:

Object {row: 1, column: null} 

В моей легенде строки слушателя, я тогда вызвал диаграммы MouseOver и прошел в том же событии:

google.visualization.events.trigger(myChart, 'onmouseover', {row: selectedIndex, column: null}); 

Но это не сработало. Я также попытался явно создать объект JS, а также использовать parseInt для выбранного индекса. В отладчике Firefox обе вещи (фактическое наведение мыши, триггер легенд) выглядели точно так же с точки зрения слушателя, но только фактическое наведение мыши вызвало выделение фрагмента.

Который оставляет меня в тупике. У кого-нибудь есть идея, как это сделать? В идеале, я ищу что-то вроде:

var slice = myChart.getSlice(someIndex); 
slice.setHighlighted(); 

Спасибо

ответ

0

Я боюсь, что это не возможно с Google Charts. Однако вы можете написать код, чтобы взорвать срез, а не выделять его. Он делает то же самое с точки зрения пользователя IMO.

Смежные вопросы