Le problème avec votre code d'origine est que fig.update()
ne prend pas fig
comme argument. Cette ligne pourrait simplement être fig.update(layout_showlegend=False)
essayez ceci :
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)
- l'argument
showlegend
fait partie d'un objet de mise en page que vous n'avez pas spécifié dans votre code - Le code peut également fonctionner si vous n'encapsulez pas l'objet de mise en page
my_layout
dans ungo.Layout()
. Cela pourrait fonctionner en gardant simplementmy_layout
un dictionnaire
J'espère que ça marche pour toi.
Après avoir créé la figure dans plotly, pour désactiver la légende, vous pouvez utiliser cette commande :
fig.update_layout(showlegend=False)
Pour les utilisateurs avancés :vous pouvez également activer/désactiver la légende des traces individuelles dans une figure en définissant la propriété showlegend de chaque trace. Par exemple :
fig.add_trace(go.Scatter(
x=[1, 2],
y=[1, 2],
showlegend=False))
Vous pouvez voir les exemples ici :https://plotly.com/python/legend/