Flotでtooltipを出力するにあたり、いくつかハマったのでメモ。
1. 同一のdataIndexを持つ複数のlabelが座標上で重なり合う位置にあるとtooltipが変わらない
参考サイトでの方法ですが、
if (previousPoint != item.dataIndex) {
}
とすると、違うlabelで同じdataIndexを持つグラフが座標上で重なり合う位置にある場合、マウスが違うlabelの上に移動しているのにtooltipが入れ替わらないので、
if (previousPoint[0] != item.dataIndex || previousPoint[1] != item.seriesIndex) {
}
のように、item.seriesIndex もチェックすることで解決しました。
2. 棒グラフのbarWidthがマイナスだとtooltipが出ない模様
barWidthをマイナスすると、x軸の基準位置から負の方向に棒グラフを出力できるのですが、barWidthがマイナスだとtooltipが出ないようです。
仕方がないので、barWidthマイナスをやめ、配列データのx座標をきっちり計算して配列に入れるようにしました。