Saltar al contenido

Plotly: ¿Cómo establecer el rango del eje y?

este problema se puede tratar de diferentes maneras, pero en este caso te compartimos la solución más completa para nosotros.

Solución:

Actualización para versiones más nuevas

Al configurar una figura, puede usar la notación mágica de guión bajo de plotly y especificar layout_yaxis_range=[, ] como esto:

fig = go.Figure(data=go.Scatter(x=x, y=y, mode='lines'), layout_yaxis_range=[-4,4])

O si ya tienes una figura llamada figpuedes usar:

fig.update_layout(yaxis_range=[-4,4])

Figura:

ingrese la descripción de la imagen aquí

Código completo:

# 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()

Respuesta original usando plotly.offline, iplot y sin notación mágica de subrayado:

Al configurar una figura, utilice:

layout = go.Layout(yaxis=dict(range=[fromValue, toValue])

O si ya tienes una figura llamada figpuedes usar:

fig.update_layout(yaxis=dict(range=[fromValue,toValue]))

Gráfico:

ingrese la descripción de la imagen aquí

Código completo para 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)

Algunos detalles importantes:

Con esta configuración, puede agregar fácilmente un título de eje y como este:

# layout
layout = go.Layout(yaxis=dict(range=[-4,4]), title='y Axis')
)

Es un poco más complicado si desea formatear aún más ese título. Me resulta más fácil agregar otro elemento con title = go.layout.yaxis.Title(text='y Axis', font=dict(size=14, color='#7f7f7f'). Mientras lo haga de la manera correcta, no debería experimentar la situación en su comentario anterior:

Gracias. Lo intenté. Pero luego tengo 2 definiciones de yaxis en el diseño: yaxis=dict(range=[0, 10]) y yaxis=go.layout.YAxis. Por lo tanto, aparece un error.

Mira esto:

Gráfico:

ingrese la descripción de la imagen aquí

Código completo con formato de texto del eje 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)

Ten en cuenta dar visibilidad a esta reseña si te valió la pena.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *