Amcharts子弹的隐藏/显示不起作用

问题描述 投票:0回答:1

我正在使用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子弹”(将不起作用)。

有人知道如何重新打开子弹吗?

感谢您提供任何提示!

hide show amcharts bullet
1个回答
0
投票

您需要在各个项目符号上调用show / hide,例如:

function hidebullets() {
  smallBullet11.clones.each(function(bullet) {
    bullet.hide();
  });
}

function showbullets() {
  smallBullet11.clones.each(function(bullet) {
    bullet.show();
  });
}

[您可能还会发现minBulletDistance属性有助于提高带有大量项目符号的折线图的性能。它允许您在绘制项目符号之前指定每个点之间的最小距离;距离越大,放大之前要绘制的项目符号就越少。您可以找到更多类似此minBulletDistance的性能提示。

© www.soinside.com 2019 - 2024. All rights reserved.