How to hide legend with Plotly Express and Plotly
The issue with your original code is that fig.update()
doesn't take fig
as an argument. That line could just be fig.update(layout_showlegend=False)
After creating the figure in plotly, to disable the legend you can make use of this command:
fig.update_layout(showlegend=False)
For Advanced users: You can also enable/disable the legend for individual traces in a figure by setting the showlegend property of each trace. For instance:
fig.add_trace(go.Scatter(
x=[1, 2],
y=[1, 2],
showlegend=False))
You can view the examples here: https://plotly.com/python/legend/
try this:
my_data = [go.Bar( x = df.Publisher, y = df.Views)]
my_layout = go.Layout({"title": "Views by publisher",
"yaxis": {"title":"Views"},
"xaxis": {"title":"Publisher"},
"showlegend": False})
fig = go.Figure(data = my_data, layout = my_layout)
py.iplot(fig)
- the argument
showlegend
is part of layout object which you did not specify in your code - The code may also work if you do not wrap the layout object
my_layout
inside ago.Layout()
. It could work by simply keepingmy_layout
a dictionary - as for
plotly.express
, tryfig.update_layout(showlegend=False)
. All the arguments are the same. Accessing them varies slightly.
Hope it works for you.