Комментарии 8
Причина первая и достаточная — он «деревянный». Шаг влево-вправо от того что он позволяет… оборачивается желанием все переписать самому. А позволяет он не всё.
Причина вторая и скрытая — нужно писать длинные лапшевидные конструкции, которые трудно отлаживать и искать «ну почему не сработало, вроде ж правильно написал» (а оказалось, нужно было еще в список завернуть параметр, вместо просто значения по ключу).
Причина третья и побочная — он не очень быстр. Реактовые компоненты и plotly сам — слегка тугодумные.
Вывод из моей практики — серьезный дашборд не сделать. Тем более дизайнерский. А вот какие-то сервисы для внутреннего пользования, скажем внутри подразделения — можно (и это достаточно быстро).
Сейчас находимся в стадии размышления — дописывать Dash, с потенциальным контрибьютом в сообщество, или же все-таки уйти на что-то другое. На что в итоге перешли вы, отказавшись от dash?
nuxt/vuetify + разные js charts libraries. Это все на так быстро как с dash, но как-то попродуктовее, что ли. Да, знаю что можно дописывать компоненты… Это тут уж кому как покатит подход.
В целом dash хорош для быстрых решений, я бы сказал для небольшого круга пользователей, для разовых целей он вообще замечателен, но к сожалению, пока не для чего-то крупного.
Dash подкупает тем, что органично встроен в питонячий data science стэк на pandas, и тем, что у него действительно хорошее покрытие понятными, логичными примерами.
Но что-то вне основного logical flow — получается коряво. Чего стоят input-output callback-и. Хотелось бы списать все на молодость Dash, сейчас развитие идет по направлению к большей гибкости, так что можно надеяться…
Но что-то вне основного logical flow — получается коряво.
Это свойство любого фреймворка или любой системы где данные описываются в декларативном стиле.
Так что всегда надо понимать — если берете фреймворк, готовьтесь к подобному.
А вообще Dash как раз хорош, когда нужна какая-то динамическая страничка, а с js возиться отдельно не сильно хочется. В Dash есть базовый набор интерактивных компонентов. Компонент Graph, на который делается упор во всех демо, по сути один из многих и без него Dash очень неплох.
Краткое руководство по Dash — Python веб-фреймворк для создания дэшбордов. Installation + Dash Layout