あなたは正しいです、flot
自動スケーリングの計算時にシリーズの可視性を考慮しません。バージョン 0.8.1 では、原因はdatamax
/datamin
属性を設定する 1177 行あたりです。描画されない場合は、シリーズをスキップできます。
if (s.lines.show == false &&
s.points.show == false &&
s.bars.show == false) continue;
しかし、これにより、追加のプロットタイプを導入するプラグインが壊れるのではないかと心配しています。
代わりに、データをマスクして自動スケーリングを機能させます。
togglePlot = function(seriesIdx)
{
var someData = somePlot.getData();
someData[seriesIdx].lines.show = !someData[seriesIdx].lines.show;
if (!someData[seriesIdx].lines.show){
someData[seriesIdx].tempData = someData[seriesIdx].data;
someData[seriesIdx].data = []; // store old data and blank out real data
}
else
{
someData[seriesIdx].data = someData[seriesIdx].tempData; // restore real data
}
somePlot.setData(someData);
somePlot.setupGrid();
somePlot.draw();
}
ここでフィドルを更新しました。