Mise à jour pour les nouvelles versions
Lors de la mise en place d'une figure, vous pouvez utiliser la fonction de plotly notation magique de l'underscore et préciser layout_yaxis_range=[<from_value>, <to_value>]
comme ça :
fig = go.Figure(data=go.Scatter(x=x, y=y, mode='lines'), layout_yaxis_range=[-4,4])
Ou si vous avez déjà un personnage nommé fig
vous pouvez l'utiliser :
fig.update_layout(yaxis_range=[-4,4])
Figure :
Code complet :
# imports
import pandas as pd
import plotly.graph_objs as go
import numpy as np
# data
np.random.seed(4)
x = np.linspace(0, 1, 50)
y = np.cumsum(np.random.randn(50))
# plotly line chart
fig = go.Figure(data=go.Scatter(x=x, y=y, mode='lines'), layout_yaxis_range=[-4,4])
fig.update_layout(yaxis_range=[-4,4])
fig.show()
Réponse originale utilisant plotly.offline
, iplot
et pas de notation magique par soulignement :
Lors de la mise en place d'une figure, utilisez :
layout = go.Layout(yaxis=dict(range=[fromValue, toValue])
Ou si vous avez déjà un personnage nommé fig
vous pouvez l'utiliser :
fig.update_layout(yaxis=dict(range=[fromValue,toValue]))
Plot :
Code complet pour Jupyter Notebook :
# imports
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
import pandas as pd
import plotly.graph_objs as go
import numpy as np
# setup
init_notebook_mode(connected=True)
# data
np.random.seed(4)
x = np.linspace(0, 1, 50)
y = np.cumsum(np.random.randn(50))
# line
trace = go.Scatter(
x=x,
y=y,
)
# layout
layout = go.Layout(yaxis=dict(range=[-4,4])
)
# Plot
fig = go.Figure(data=[trace], layout=layout)
iplot(fig)
Quelques détails importants :
Avec cette configuration, vous pouvez facilement ajouter un titre à l'axe des y comme ceci :
# layout
layout = go.Layout(yaxis=dict(range=[-4,4]), title='y Axis')
)
C'est un petit plus délicat si vous souhaitez formater davantage ce titre. Je trouve que le plus simple est d'ajouter un autre élément avec title = go.layout.yaxis.Title(text='y Axis', font=dict(size=14, color='#7f7f7f')
. Tant que vous le faites de la bonne manière, vous ne devriez pas connaître la situation décrite dans votre commentaire ci-dessus :
Merci. J'ai essayé. Mais j'ai alors 2 définitions de yaxis dans le fichier Layout : yaxis=dict(range=[0, 10]) et yaxis=go.layout.YAxis. Par conséquent, une erreur apparaît.
Jetez un coup d'oeil à ça :
Plot :
Code complet avec formatage du texte de l'axe des y :
# imports
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
import pandas as pd
import plotly.graph_objs as go
import numpy as np
# setup
init_notebook_mode(connected=True)
# data
np.random.seed(4)
x = np.linspace(0, 1, 50)
y = np.cumsum(np.random.randn(50))
# line
trace = go.Scatter(
x=x,
y=y,
)
# layout
layout = go.Layout(
yaxis=dict(range=[-4,4],
title = go.layout.yaxis.Title(text='y Axis', font=dict(size=14, color='#7f7f7f')))
)
# Plot
fig = go.Figure(data=[trace], layout=layout)
iplot(fig)