Применить фильтр приборной панели из среза, отличного от Filter Box

Я хочу использовать срез, отличный от поля фильтра, чтобы применить фильтр к моей панели.

Для моего набора данных, который структурирован как дерево, я адаптировал дерево с отступами из галереи визуализаций d3 в фрагмент, который выглядит примерно так:

Мой срез дерева имеет ветви и уровни, которые представляют разные пути, и конечные узлы, которые содержат мои значения. введите описание изображения здесь

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

Я попытался представить путь и значение узла в виде строки и использовать его в обычном окне фильтра. Тем не менее, часто бывают случаи, когда я получаю действительно длинные строки, которые ухудшают работу пользователя.

Я посмотрел на реализацию Filter Box, чтобы увидеть, смогу ли я найти метод, используемый для изменения настроек фильтра. Тем не менее, это, кажется, довольно сложный процесс, и повторная реализация Filter Box в моем слайсе кажется мне неправильным подходом.

Есть ли общий способ изменить фильтр приборной панели и применить его?

1 ответ

Решение

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

https://github.com/apache/incubator-superset/blob/master/superset/assets/visualizations/table.js#L130

Интерфейс для визуализации является функцией, которая получает slice а также payload Титулы. slice объект подвергает addFiler а также removeFilter как показано в примере выше.

Так что это вопрос или настройка вашей визуализации для генерации правильных событий фильтрации с использованием объекта среза.

Другие вопросы по тегам