我正在使用amcharts4创建大数据图表(XY(。我想在里面包括两种不同类型的子弹。然后用户可以打开/关闭这些不同类型的弹头。我设法关掉了,但没有再打开。
由于我的真实用例加载了大量(!(数据,我以一种不同寻常的方式实现了项目符号以保持性能:项目符号被禁用,然后使用propertyfield.disabled.启用
var smallBullet11 = series1.bullets.push(new am4charts.LabelBullet());
smallBullet11.disabled = true;
smallBullet11.propertyFields.disabled = "hideBullet1";
结果我可以躲起来,但以后再也不显示子弹了。
以下是完整的示例:https://jsfiddle.net/9uwgp85s/
首先单击"隐藏X项目符号"(有效(,然后单击"显示X项目符号(无效("。
有人知道如何重新打开子弹吗?
谢谢你的提示!
您需要对各个项目符号调用show
/hide
,例如:
function hidebullets() {
smallBullet11.clones.each(function(bullet) {
bullet.hide();
});
}
function showbullets() {
smallBullet11.clones.each(function(bullet) {
bullet.show();
});
}
您可能还发现minBulletDistance
属性有助于提高具有大量项目符号的折线图的性能。它允许您在绘制项目符号之前指定每个点之间的最小距离;距离越大,在放大之前绘制的项目符号就越少。你可以在这里找到更多像这样的性能提示。