一部のデータをプロットするために flot.js を少し試しましたが、かなりの数のデータ系列があるため、ユーザーは一部の系列を非表示にしたいと思うかもしれません。flot の例の 1 つは、チェックボックスを使用してデータ系列を切り替える方法を示しています。凡例の小さなカラー ボックスまたはラベルをクリックして、そのシリーズの表示を切り替えたいと思います。それは可能ですか?
8931 次
2 に答える
4
チェックボックスを使用する例を次に示しますhttp://people.iola.dk/olau/flot/examples/turning-series.html
各 legendLabel にクリック イベントを配置するように変更できますが、一度に 1 つの凡例しか表示できません。
ready 関数でこのようなものを使用する
$('.legendLabel').click(
function(d){
var country = $(this).html().toLowerCase();
var data = [ ];
//alert( country );
data.push( datasets[country] );
if (data.length > 0)
$.plot($("#placeholder"), data, {
yaxis: { min: 0 },
xaxis: { tickDecimals: 0 }
});
}
);
于 2009-12-02T21:30:22.917 に答える
0
私はプログラミングに戻ったばかりで、ajax などにあまり慣れていないので、JavaScript でソリューションを実装しました。ロジックを使用して、求めていることを実行できる場合があります。
<html>
<head>
<script type="text/javascript">
<!--
function toggle_visibility(id) {
var e = document.getElementById(id);
if(e.style.display == 'block')
e.style.display = 'none';
else
e.style.display = 'block';
}
//-->
</script>
</head>
<body>
<fieldset>
<legend onclick="toggle_visibility('cm1');">Click Me</legend>
<div id="cm1">
<p>I toggle when the legend is clicked.</p>
<p>But I'm a recalcitrant text node and refuse to toggle.</p>
</div>
</fieldset>
<fieldset>
<legend onclick="toggle_visibility('cm2');">Click Me 2</legend>
<div id="cm2">
<p>Toggle me too when the legend is clicked.</p>
<p>But I'm a recalcitrant text node and refuse to toggle.</p>
</div>
</fieldset>
</body>
</html>
于 2013-07-28T08:55:48.143 に答える