es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo formatear el tooltip para usar la misma hora (UTC) del dataframe? El tooltip muestra tz.locale para los datos de tiempo.

Estoy intentando mostrar la hora UTC de un DataFrame de pd dentro de un tooltip, pero siempre muestra la hora local en el navegador.

Con el código siguiente:

datos = pd.DataFrame({'a': [2]})
df = pd.DataFrame({
    'local': ['2018-01-01T09:00:00', '2018-01-01T10:00:00', '2018-01-01T14:00:00'],
    'utc': ['2018-01-01T09:00:00Z', '2018-01-01T10:00:00Z', \
        '2018-01-01T14:00:00Z']
})

df['utc'] = pd.todatetime(df['utc'], utc=True)
df['local'] = pd.todatetime(df['local'], utc=False)
df['iso'] = df['utc'].apply(lambda x: x.isoformat())

dia1 = alt.Chart(df).mark_rule().encode(
    x=alt.X('utchoursminutes(utc)', type='temporal'),
    y=alt.Y('utchoursminutes(utc)', type='temporal'),
    tooltip=[
        alt.Tooltip(field="utc",
                    type="temporal",
                    title="utc",
                    format="%Y-%m-%dT:%H:%M:%S",
                    formatType="time")
    ],
).interactive()

El eje X muestra la misma hora del DataFrame (utc) independientemente de la zona horaria que
utilice el navegador, lo cual es deseado.

Pero el tooltip siempre muestra la hora local.
Por ejemplo, 7 PM en Tokio pero 11 PM en Berlín. ¿Cómo puedo dar formato a la serie temporal para que muestre la hora original del DataFrame dentro de la caja de tooltip?
¿O hay alguna opción de formato posible para especificar dentro del tooltip?

Gracias.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Puede utilizar el argumento formatType en alt.Tooltip para especificar el formato de la serie temporal. Por ejemplo, puede usar formatType="utc" para mostrar la hora GMT en el tooltip. También puede utilizar format para especificar el formato exacto de la serie temporal. Por ejemplo, format="%Y-%m-%dT:%H:%M:%S" mostrará la serie temporal en el formato AAAA-MM-DDTHH:MM:SS.

Comments are closed.