tes*_*123 2 javascript jquery graph flot
我有一个场景,我想根据复选框选择切换系列.我已使用图例选项中的labelFormatting将复选框添加到图例中,例如:
var otherOptions = {
legend: {
container: legend,
labelFormatter: function (label, series) {
var cb = '<input type="checkbox" name="' + label + '" checked="checked" id="id' + label + '"> ' + label;
return cb;
}
},
};
Run Code Online (Sandbox Code Playgroud)
我已经为图例添加了click事件,以便我可以根据选中的项目操作系列.一切正常,除非我在图例中取消选中标签,在重新绘制时它也会从图例中删除该系列线.所以对于前者,下面是前后图像:
之前
后
请注意,在图像"USA"复选框缺失之后.有什么方法我仍然可以在图例中显示未经检查的"USA"复选框吗?
我看了一下这里的建议:flot graph,使用图例打开/关闭系列
但唯一的问题是我不想将图例和复选框图例分开.关于给定链接的问题是在1年前回答的,所以我想我会抓住机会再次提出问题,以防有人知道这样做的方法.
请告诉我.
谢谢!
如果取消选中该复选框,则不是一起删除所有系列,而是添加空数据.
像这样的东西:
function plotByChoice(doAll)
{
$('#legend .legendCB').each(
function(){
if (this.checked)
{
data.push(datasets[someLabel]);
}
else
{
data.push({label: someLabel, data: []})
}
}
);
// plot call etc...
}
Run Code Online (Sandbox Code Playgroud)
工作小提琴在这里.