【问题标题】:Hide/Show of Amcharts bullets doesn't work隐藏/显示 Amcharts 项目符号不起作用
【发布时间】:2020-05-01 10:41:40
【问题描述】:

我正在使用 amcharts4 创建大型数据图表 (XY)。我想在其中包含两种不同类型的子弹。然后这些不同的类型应由用户打开/关闭。我设法关闭了,但没有再次打开。

由于我的实际用例加载了大量(!)数据,我以一种不寻常的方式实现了项目符号以保持性能:项目符号被禁用,然后使用 propertyfield.disabled 启用。

var smallBullet11 = series1.bullets.push(new am4charts.LabelBullet());
smallBullet11.disabled = true;
smallBullet11.propertyFields.disabled = "hideBullet1";

结果我可以隐藏,但以后不再显示子弹。

这里是完整的例子:https://jsfiddle.net/9uwgp85s/

先点击“隐藏 X-Bullets”(将起作用),然后点击“显示 X-Bullets”(不起作用)。

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

感谢任何提示!

【问题讨论】:

    标签: hide show amcharts bullet


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 2012-12-29
      • 2012-03-11
      • 1970-01-01
      • 1970-01-01
      • 2017-08-05
      • 2012-04-20
      • 2018-06-10
      • 1970-01-01
      相关资源
      最近更新 更多