Skip to content

    What is Plotly?

    plotly.py, colloquially referred to as Plotly, is an interactive, open-source, and browser-based graphing library. It offers Python-based charting, powered by plotly.js.  The library ships with over 30 chart types, including scientific charts, 3D graphs, statistical charts, SVG maps, financial charts, and more. Plotly Inc. the company responsible for the development and maintenance of the library was founded by Alex Johnson, Jack Parmer, Chris Parmer, and Matthew Sundquist. Plotly Inc. was featured in "startup row" at PyCon 2013,[4] and sponsored the SciPy 2018 conference. The company now is headquartered in Montreal, Quebec.

    What is Dash?

    Dash is another open-source Python framework from Plotly Inc., which is manly used for building ML and data science web apps. It is built on top of plotly.py, and ties modern UI elements such as dropdowns, sliders, and graphs directly to your analytical Python code. The enterprise version of Dash provides several other features including scalable hosting and deployment.

    Plotly vs. Matplotlib and Bokeh

    All three of these are very popular data visualization packages. While Matplotlib is one of the earliest and most robust visualization tools in Python, Plotly and bokeh provide much more interactive and appealing visualizations to the user. 

      Plotly Bokeh Matplotlib

    Ease of use

    Convenient in most situations

    Can be tedious 

    Very simple

    Number of types of charts supported

    30+

    50+

    80+

    Interactive

    Yes

    Yes

    No

    Dashboards

    Dash server

    Bokeh server

    No dashboard

    Supports 3D graphs 

    Yes

    No

    Yes

    Supported programming languages

    Javascript, python, R, Julia 

    Python, R, Scala

    Python

     

    Plotly and Domino

    Domino comes with built-in support for  Dash and enables users to leverage the powerful features of this framework for the purposes of data visualization and ML models interaction. Publishing a Dash web application is a fairly straightforward process, which involves the following steps:. 

    • Configure a Domino compute environment with the necessary dependencies to publish a Dash application
    • Create a project and set it up for App publishing
    • Publish an App to the Domino launchpad
    • Observe how other users in Domino can use the App

    You can find the detailed steps here. 

    Additional Resources