Plotly: How to display charts in Spyder?

If you’d like to develop your plotly figures in Spyder, perhaps because of Spyders superb variable explorer, you can easily display a non-interactive image by just running fig.show(). Note that this is for newer versions of plotly where you don’t have to worry about iplot and plotly.offline.

And if you’d like display your figure in the browser as a fully interactive version, just run:

import plotly.io as pio
pio.renderers.default="browser"

Now your figure will be displayed in your default browser.

To switch back to producing your figure in Spyder, just run:

import plotly.io as pio
pio.renderers.default="svg"

You can check other options too using pio.renderers?:

Renderers configuration
-----------------------
Default renderer: 'svg'
Available rendere <...> wser', 'firefox', 'chrome', 'chromium', 'iframe',
'iframe_connected', 'sphinx_gallery']

You’ll find even more details here under Setting the default renderer

Here’s a detailed example

Code:

import plotly.graph_objects as go

import plotly.io as pio
#pio.renderers.default="svg"
pio.renderers.default="browser"

x = ['Product A', 'Product B', 'Product C']
y = [20, 14, 23]

fig = go.Figure(data=[go.Bar(
            x=x, y=y,
            text=y,
            textposition='auto',
        )])
fig.show()

Plot:

enter image description here

System info:

Python 3.7.6
Spyder 3.3.1
Plotly 3.2.0

Leave a Comment