Saltar al contenido

¿Cómo dibujar un gráfico de líneas múltiples usando plotly_express?

Posteriormente a observar en varios repositorios y sitios webs de internet finalmente encontramos la respuesta que te mostraremos pronto.

Solución:

Con la versión 4.8 de Plotly.py, el código de la pregunta original ahora se admite casi sin modificaciones:

pd.options.plotting.backend = "plotly"
df.plot(x='date', y=['sessions', 'cost'])

Respuesta anterior, a julio de 2019

Para este ejemplo, podría preparar los datos de forma ligeramente diferente.

df_melt = df.melt(id_vars='date', value_vars=['sessions', 'cost'])

Si transpone/fusiona sus columnas (sesiones, costo) en filas adicionales, puede especificar la nueva columna ‘variable’ para particionar en el parámetro de color.

px.line(df_melt, x='date' , y='value' , color='variable')

Ejemplo de salida plotly_express

Con las versiones más nuevas de plotly, todo lo que necesita es:

df.plot()

Siempre que recuerde configurar pandas plotting backend para plotly:

pd.options.plotting.backend = "plotly"

Desde aquí, puede ajustar fácilmente su trama a su gusto, por ejemplo, configurando el tema:

df.plot(template='plotly_dark')

Trama con tema oscuro:

ingrese la descripción de la imagen aquí

Una característica particularmente sorprendente con las versiones más nuevas de plotly es que ya no tiene que preocuparse si su marco de datos de pandas es de formato ancho o largo. De cualquier manera, todo lo que necesitas es df.plot(). Echa un vistazo a los detalles en el fragmento a continuación.

Código completo:

# imports
import plotly.express as px
import pandas as pd
import numpy as np

# settings
pd.options.plotting.backend = "plotly"

# sample dataframe of a wide format
np.random.seed(4); cols = list('abc')
X = np.random.randn(50,len(cols))  
df=pd.DataFrame(X, columns=cols)
df.iloc[0]=0; df=df.cumsum()

# plotly figure
df.plot(template = 'plotly_dark')

Respuesta para versiones anteriores:

Sugeriría encarecidamente usar iplot() en cambio, si desea usar plotly en un Jupyter Notebook, por ejemplo:

Gráfico:

ingrese la descripción de la imagen aquí

Código:

import plotly
import cufflinks as cf
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
import pandas as pd
import numpy as np


# setup
init_notebook_mode(connected=True)
np.random.seed(123)
cf.set_config_file(theme='pearl')

# Random data using cufflinks
df1 = cf.datagen.lines()
df2 = cf.datagen.lines()
df3 = cf.datagen.lines()
df = pd.merge(df1, df2, how='left',left_index = True, right_index = True)
df = pd.merge(df, df3, how='left',left_index = True, right_index = True)

fig = df1.iplot(asFigure=True, kind='scatter',xTitle='Dates',yTitle='Returns',title='Returns')
iplot(fig)

Nos puedes añadir valor a nuestra información asistiendo con tu experiencia en las crónicas.

¡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 *