Hide / Show of Amcharts bullets не работает - PullRequest
0 голосов
/ 01 мая 2020

Я использую amcharts4 для создания больших диаграмм данных (XY). Я хочу включить в него два разных типа пуль. Затем эти различные типы должны быть включены / выключены пользователем. Мне удалось выключить, но не снова.

Поскольку мой реальный сценарий использования загружает много (!) Данных, я реализовал маркеры необычным способом для повышения производительности: маркеры отключены, а затем включены with 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» (не будет работать).

Кто-нибудь знает, как переключать маркеры? снова?

Спасибо за любую подсказку!

1 Ответ

1 голос
/ 05 мая 2020

Вам нужно будет позвонить show / hide по отдельным пулям, например:

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

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

Вы также можете найти свойство minBulletDistance полезным в улучшение производительности на линейном графике с тонной пуль. Позволяет указать минимальное расстояние между каждой точкой до рисования пули; Чем больше расстояние, тем меньше пуль будет вытягиваться до тех пор, пока вы не увеличите масштаб. Вы можете найти больше советов по производительности, как этот здесь .

...