XML-схема нечувствительное к регистру перечисление простой строки типа

Чтобы выделить один столбец при щелчке, сначала сделайте переключаемые столбцы:

series.columns.template.togglable = true;

Теперь, когда вы щелкаете столбец, он будет переключаться между его активными состояниями и состояниями по умолчанию, поэтому вам просто нужно создать активное состояние и определить его свойства. Вы уже делаете это с этими двумя строками кода:

var activeState = series.columns.template.states.create("active");
activeState.properties.fill = am4core.color("#E94F37");

И это все! Нет необходимости в хитовых событиях и т. П.

Если вы хотите, чтобы за раз выделялся только один столбец, тогда нам нужно событие попадания, мы просто сбросим каждый столбец, кроме того, который был нажат (независимо от того, были они активны или нет, не имеет значения) , series.columns является шаблоном списка , поэтому у него есть метод each, который позволяет перебирать все фактические столбцы (во многом как Array.forEach):

series.columns.template.events.on("hit", function(event) {
  series.columns.each(function(column) {
    if (column !== event.target) {
      column.setState("default");
      column.isActive = false;
    }
  })
});

[1112 ] Вот демонстрация:

https://codepen.io/team/amcharts/pen/abd6da81e3bd7004f70eb6069a135219

16
задан Bobby Cannon 11 September 2010 в 04:30
поделиться

2 ответа

IBM developerWorks имеет статью о том, как использовать XSLT для выполнения конструкции полного набора альтернатив перечисления автоматизированным способом. Это представлено как обходное решение к отсутствию нечувствительных к регистру перечислений.

10
ответ дан 30 November 2019 в 21:11
поделиться

Ну, Вы могли просто перечислить все перестановки как шаблоны :)

1
ответ дан 30 November 2019 в 21:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: