我有一个包含多个数据的折线图。以下是我的图表示例。
如果我在图表上点击该图例,通常会自动显示/隐藏图例数据。
但是我在这样的传奇中添加了一个函数,
legend: {
position: 'right',
item: {
onclick: function (d) {
console.log("onclick", d);
show(d); //when I click legend show some data
}
}
},
如果我在图表上点击该图例,我不会自动显示/隐藏。但它对我来说并不重要。
而不是这个,我想只显示在图表中点击图例数据。如果我点击data1
图例,我只想在图表中显示data1
行,并在图表中隐藏另一个data2
,data3
和data4
行。
但是,我不知道该怎么做。我非常感谢任何建议。
答案 0 :(得分:2)
现在,我可以解决我的问题。这是代码。
legend: {
position: 'right',
item: {
onclick: function (d) {
console.log("onclick", d); //data1
show(d); //when I click legend show some data
chart.hide();
chart.show(d);
}
}
},
首先,我使用chart.hide()
。此功能将隐藏图表上的所有数据。
之后,我使用chart.show(d)
,它只显示用户点击的数据,因为我添加了用户点击图例作为参数。
注意:
show(d)
与chart.show(d)
无关。只是一个功能 我为自己的需要而创造。
答案 1 :(得分:0)
对于那些像我在寻求从图例点击集中关注单个系列的方法(我习惯于双击执行此操作)的过程中跌跌撞撞的人来说,似乎c3
已添加使用alt-click
专注于单个图例项的功能。参见提交here。事实证明,这在billboard.js
中也是有效的,它是c3
的分支。