Dash, самая быстрорастущая платформа для создания аналитических веб-приложений на основе моделей Python, теперь доступна для языка программирования R.

Монтаж | Документация | GitHub | "Галерея"

Dash был выпущен в 2017 году как последняя разработка в аналитических инструментах Plotly с открытым исходным кодом. В то время Plotly был известен нашими библиотеками научных графиков. (Библиотека диаграмм Python Plotly, plotly.py, загружается более миллиона раз в месяц). Dash позволил пользователям этих графических библиотек расширить свои идеи от отдельных графиков до полноценных аналитических приложений, работающих на мощных моделях Python.

Plotly был основан на идее, что инструменты научного анализа не поспевают за инновациями 21 века. «Инструменты будущего» для анализа потребуют значительных изменений, чтобы поддерживать растущий объем данных и усложнять варианты использования. Особенно:

  • Произойдет переход к взаимодействию с данными в Интернете, в результате чего веб-браузер станет основным интерфейсом.
  • Основная технология будет с открытым исходным кодом и будет бесплатной, что обеспечит более широкий обмен и ускорение инноваций.
  • По мере роста глобальной грамотности в области кодирования анализ на основе кода вытеснит анализы из программного обеспечения, основанного на наведении и щелчке мышью.
  • Инструменты кодирования, не зависящие от языка, предотвратят дублирование усилий и ускорят внедрение инноваций.

Помня об этом, мы добавили мощь Dash в R, что позволило сочетать настраиваемые пользовательские интерфейсы с современными статистическими моделями и графикой R.

Монтаж | Документация | GitHub | "Галерея"

Лицензия с открытым исходным кодом (MIT)

Как и почти все программное обеспечение Plotly, пакет Dash for R имеет лицензию MIT. Лицензия MIT - самая разрешительная из лицензий с открытым исходным кодом. Он позволяет вам свободно создавать и изменять код, создавать и продавать продукты с помощью Dash for R или встраивать Dash for R в более крупное приложение - все, что вы можете себе представить, - A-OK 👌. Вам никогда не придется связываться с нами (хотя мы будем счастливы, если вы это сделаете), повторно вносить изменения в код или беспокоиться о последствиях xGPL в будущем. Разрешительные лицензии, такие как MIT, упрощают жизнь. Смотрите и 🌟 пометите 🌟 репозиторий Dash for R на Github, чтобы быть в курсе последних событий.

Улучшенный опыт отладки

Инструменты разработчика Dash - стандартная функция Dash. Это помогает эффективно выявлять ошибки, понимать поток обратных вызовов и предлагать исправления синтаксиса. Даже если вы новичок в R, создать свое первое приложение на Dash очень легко с помощью Dash Dev Tools в вашем кармане. Мы хотим сделать анализ данных в R и Python увлекательным и доступным для всех - первоклассный опыт отладки является ключом к этому. Dash Dev Tools финансировалась крупной корпорацией США, но была доступна всем пользователям Dash 👏. Пожалуйста, свяжитесь с нами, если есть что-то, что вы хотели бы добавить в корпус Dash.

Масштабируемая внутренняя архитектура

Состояние вашего приложения Dash - это комбинация всех настроек вашего пользовательского интерфейса в любой момент времени. В зависимости от вашего приложения Dash состояние может включать, какие флажки установлены, какой текст находится в строке поиска, какие данные на графике выбраны и т. Д.

Dash был разработан с бэкэндом без сохранения состояния. Это означает, что при изменении пользовательского интерфейса вашего приложения Dash состояние вашего приложения возвращается к вашему коду R или Python, но никогда не сохраняется на сервере. Фактически, если вы попытаетесь сохранить состояние приложения в коде R или Python, вы, вероятно, вызовете какое-то странное поведение (см.« Почему глобальные переменные нарушают работу вашего приложения »).

Убийственное преимущество бэкэнда без сохранения состояния заключается в том, что несколько серверов могут легко управлять одним и тем же приложением Dash, поскольку состояние не нужно разделять между серверами. Веб-сайты с большим объемом трафика, такие как New York Times, теперь могут публиковать интерактивные графики на основе возможностей статистического моделирования, поскольку количество серверов Dash можно легко масштабировать, чтобы справиться с вычислительной нагрузкой. Динамическое масштабирование может быть достигнуто с помощью балансировщика нагрузки, такого как NGINX, или Plotly предлагает версию с высокой доступностью Dash Enterprise, чтобы выполнять динамическое масштабирование за вас.

Идеальный стиль Pixel

Dash поставляется без стиля по умолчанию. Это дает вам пустой холст для создания собственного внешнего вида для каждого приложения. Обычно невозможно отличить приложение Dash, созданное на R, от полнофункционального веб-приложения, созданного командой разработчиков. За кулисами Dash создает для вас одностраничное приложение React, но все, что вам нужно знать, - это R. Стилизация приложений Dash достигается с помощью стандартных правил CSS, поэтому вы по-прежнему можете использовать стандартные библиотеки CSS, такие как Bootstrap, или сотрудничать с дизайнером, чтобы соответствовать бренду вашей компании. Dash Enterprise также поставляется с набором стилей, который позволяет одним щелчком мыши создавать темы для приложений Dash и готовую мобильную поддержку для быстрой производительности.

Бесшовные многостраничные приложения

Приложения расширенной аналитики могут иметь несколько страниц. Например - страница для ввода параметров модели, страница для просмотра выходных графиков и страница для экспорта результатов в PDF. Dash имеет мощную поддержку многостраничности, так что ваши идеи не ограничиваются одной страницей или не распространяются по нескольким приложениям.

Интерфейсы для наук о жизни

Инструменты аналитики программного обеспечения не успевают за последними инновациями в области наук о жизни. Компании и лаборатории в области синтетической биологии, секвенирования следующего поколения, геномики и биологии разрабатывают собственные инструменты для анализа новых форматов и объемов данных, которые производятся в этих областях. Dash Bio стремится стать наиболее полным, гибким и эффективным конструктором пользовательского интерфейса для ученых-биологов, работающих в R и Python. Dash Bio полностью совместим с пакетом Dash for R. Просмотреть галерею примеров приложений Dash Bio (плюс код R для их создания).

Современная архитектура React

React - это самый популярный фреймворк JavaScript для создания пользовательских интерфейсов, разработанный Facebook с открытым исходным кодом. Пользователи Dash извлекают выгоду из этой экосистемы, потому что существует простой рабочий процесс для преобразования любого компонента React в компонент Dash с автоматически сгенерированными интерфейсами R и Python. По мере того как экосистема компонентов React продолжает расти и процветать, экосистема компонентов Dash также расширяется.

R или Python… неважно

Dash был разработан с первого дня, чтобы не зависеть от языка, поэтому команды могут работать на любом языке, который они предпочитают, а будущее Dash не привязано к одному языку анализа. Как технология, Dash на 80% состоит из JavaScript и API. Части Python и R являются относительно простыми оболочками, которые взаимодействуют с этим API. Вероятно, вы можете ожидать поддержки Julia, Scala и MATLAB для Dash в будущем.

Привет!

Карсон Сиверт и Крис Пармер изначально заложили основы для переноса Dash на язык программирования R. Веб-сервер в пакете Dash for R (Fiery) был разработан Томасом Лином Педерсеном. Dash, библиотеки компонентов Dash и графические библиотеки Dash поддерживаются командой из 20 разработчиков с открытым исходным кодом в столице исследований искусственного интеллекта Канады - Монреале.

Учить больше