Elevate: Migración de suma móvil de progreso anual a la aplicación Elevate

Creado en 6 feb. 2019  ·  35Comentarios  ·  Fuente: thomaschampagne/elevate

Con el lanzamiento de Elevate 6.9.0 y la eliminación de las funciones de Progresión del año en la página de perfil, los gráficos de promedio de 30 días y 365 días ya no están disponibles. ¿Podría esto (¡por favor!) Ser restaurado de alguna manera? Sé que esto sucedió una vez antes en 2017, por ejemplo, el problema n. ° 462, pero vuelvo a plantear el problema solo para asegurarme de que se conoce como una característica muy útil.

block enhancement feature

Comentario más útil

Hola thomas

Gracias por la respuesta y explicación. Daré mis propias necesidades y uso para esto, pero espero que otros puedan agregar más si hay alguno:

Necesitar:
Una forma de comparar las cargas de entrenamiento recientes y extendidas (medidas por distancia o elevación) de un año al siguiente.

Caso de uso:
El usuario puede seleccionar mostrar gráficos de 30 días o 365 días promedio de elevación o distancia (que se muestra en el eje y), y la fecha en el eje x a partir del 1 de enero. Cada año con los datos disponibles se pueden superponer en un color diferente, e idealmente también la capacidad de seleccionar / anular la selección de años específicos para realizar comparaciones directas entre ellos.

Problema resuelto:
Esto proporciona una forma razonablemente eficaz de comparar el esfuerzo de entrenamiento medido por la distancia y la elevación en determinadas épocas del año en comparación con años anteriores. A menudo, los atletas entrenan para eventos anuales específicos que caen aproximadamente en la misma fecha cada año, y poder comparar fácilmente los promedios móviles de 30 días (y en menor medida de 365 días) es una excelente manera de comparar la preparación para tales eventos.

Solicitud de función adicional opcional: la capacidad de ajustar la ventana promedio móvil entre o por debajo de 30 días y 365 días también podría ser útil, aunque creo que 30 días es un valor fijo bastante bueno. Ajustar el tamaño de la ventana podría ser útil para comparar bloques de entrenamiento de más de 30 días de un año a otro (por ejemplo, los programas de entrenamiento de maratón a menudo se establecen en 3 meses).

Todos 35 comentarios

Apoyo esto, me encanta la tendencia del fitness, ¡pero el promedio móvil de 30 días es invaluable!

¡Vine aquí para decir solo esto! El promedio móvil de 30 días fue una de las características más útiles para comparar el volumen de las temporadas. Además, la distancia del año pasado fue bastante reveladora para aquellos que se concentraron en acumular millas.

Sería muy útil agregar los últimos 30 días y la distancia / tiempo / elevación promedio del año pasado si es posible.

También me gustaría aprovechar esta oportunidad para agradecer a Thomas por su inconmensurable proyecto.

@ashdriver @DCunnama @fjavipm Entiendo estos comentarios. En realidad, esta característica heredada había sido codificada por otra persona (¡por solicitud de extracción y gracias a él!). Encontré muchos errores con muchos usuarios y no pude mantener la función en el código heredado. Es por eso que moví (o forcé por ti ...) la función anterior a la nueva.

Volveré a traer esta característica y la marcaré como urgente . Para ser honesto, nunca entendí realmente el concepto de promedio móvil de el promedio de distancia / tiempo / elevación del año pasado para mi propio propósito. Así que puedo imaginar que muchos usuarios (excepto usted) no podrán usarlo correctamente. Recuerdo que las funciones deben ser accesibles para todos.

Entonces, ¿podría volver a explicarme la "necesidad", el "caso de uso", los "problemas resueltos" detrás del promedio móvil de 30 días y el promedio de distancia / tiempo / elevación del año pasado ? ¿Entonces puedo volver a codificarlo en la progresión del año nuevo? Esta comprensión es necesaria para mí y también para todos los demás usuarios.

Si desea recuperar la función anterior, aún puede descargar una compilación anterior aquí: https://thomaschampagne.github.io/elevate/#/builds (con filtros branch: master, versión: 6.8.1 )

Hola thomas

Gracias por la respuesta y explicación. Daré mis propias necesidades y uso para esto, pero espero que otros puedan agregar más si hay alguno:

Necesitar:
Una forma de comparar las cargas de entrenamiento recientes y extendidas (medidas por distancia o elevación) de un año al siguiente.

Caso de uso:
El usuario puede seleccionar mostrar gráficos de 30 días o 365 días promedio de elevación o distancia (que se muestra en el eje y), y la fecha en el eje x a partir del 1 de enero. Cada año con los datos disponibles se pueden superponer en un color diferente, e idealmente también la capacidad de seleccionar / anular la selección de años específicos para realizar comparaciones directas entre ellos.

Problema resuelto:
Esto proporciona una forma razonablemente eficaz de comparar el esfuerzo de entrenamiento medido por la distancia y la elevación en determinadas épocas del año en comparación con años anteriores. A menudo, los atletas entrenan para eventos anuales específicos que caen aproximadamente en la misma fecha cada año, y poder comparar fácilmente los promedios móviles de 30 días (y en menor medida de 365 días) es una excelente manera de comparar la preparación para tales eventos.

Solicitud de función adicional opcional: la capacidad de ajustar la ventana promedio móvil entre o por debajo de 30 días y 365 días también podría ser útil, aunque creo que 30 días es un valor fijo bastante bueno. Ajustar el tamaño de la ventana podría ser útil para comparar bloques de entrenamiento de más de 30 días de un año a otro (por ejemplo, los programas de entrenamiento de maratón a menudo se establecen en 3 meses).

Entonces, ¿podría volver a explicarme la "necesidad", el "caso de uso", los "problemas resueltos" detrás del promedio móvil de 30 días y el promedio de distancia / tiempo / elevación del año pasado ? ¿Entonces puedo volver a codificarlo en la progresión del año nuevo? Esta comprensión es necesaria para mí y también para todos los demás usuarios.

"Últimos 30 días" es útil para comprender las variaciones en el volumen de entrenamiento específicamente por deporte. En los deportes de larga duración, el volumen y la intensidad son las claves del éxito. Dejando de lado la intensidad, que se puede obtener en HRSS, el volumen es la parte más simple de la ecuación, pero a menudo es muy difícil de acertar. Por ejemplo, la función de los últimos 30 días lo ayuda a obtener su tasa de aumento hasta las últimas seis a ocho semanas de su evento pico.

Solo una pequeña corrección: he estado hablando de 'promedios móviles' durante 30 y 365 días, pero en realidad la distancia / elevación / tiempo total acumulado sobre la ventana es probablemente más útil y es la forma en que esta función se implementó anteriormente.

También quería intervenir e ir tan lejos como para decir que los promedios de 30 y 365 días en realidad han sido la razón número uno por la que utilizo su complemento, así que por favor tráigalo de vuelta :)

Para responder a la pregunta de la utilidad, los promedios móviles son buenas formas de tener una medida más razonable de "rachas" que a los corredores les encanta seguir. Por ejemplo, sé que he tenido al menos 3000 mi promedio móvil en mis piernas durante más de un año (para ser exactos 424 días, como puede ver a continuación). Realizo estos cálculos en una hoja de cálculo de Google separada, pero es bastante fácil convertirlos en un gráfico para incluirlos en su complemento.

Umbral | Por semana | Semen. Millas | Fecha alcanzada | Días pasados ​​| Meses más
- | - | - | - | - | -
1000 | 19 | 1006 | 2016/03/29 | 1044 | 34
1500 | 29 | 1516 | 2016/08/19 | 901 | 29
2000 | 38 | 2001 | 2016/10/21 | 838 | 27
2500 | 48 | 2505 | 2017/06/19 | 597 | 19
3000 | 58 | 3005 | 2017/12/09 | 424 | 13

Para mí es más claro a partir de ahora ... Me quedé largos minutos en mis progresiones para atraparlo. Antes tenía una visualización incorrecta de la función ... Eso no me ayudó ... Pero a partir de ahora, no es ciencia espacial :)

Así que proporcionaré estos 2 modos:

  • El "Modo acumulativo estándar" que existe actualmente en la aplicación
  • Y el "Modo Rolling Streak" => Necesito su ayuda para la redacción de marketing correcta;)

El "Modo de racha continua" tendrá un valor de día continuo personalizable de 1 a 365 . ¿Deberíamos restringir esto a valores fijos? Me refiero a 1 semana , 2 semanas , 1 mes , 3 meses , .. 6 meses , 1 año . Es posible que algunos usuarios no sepan qué recuento de días es el mejor, supongo.

El "Modo Rolling Streak" se aplicará a todos los tipos de progreso: distancia , tiempo , elevación y conteo .

¿Todavía no sé qué podemos mostrar en la tabla (lado derecho)? ¿El delta rodante entre años? ¿Qué pasa con los objetivos?

Por supuesto, las cosas que escribí aquí no están selladas. Puede dejar sus sugerencias, ideas, advertencias, ...;) vincularé algunas compilaciones aquí. Entonces podrá probar la función. Trabajaré principalmente en eso ahora, otras características están en estado pendiente.

Gracias Thomas, también estoy de acuerdo en que esta fue una de mis partes favoritas del complemento. Personalmente, creo que tenerlo predeterminado en 1 mes, pero permitir que el usuario lo configure manualmente sería genial.

A menudo cambiaba entre 1 mes y 1 año para comparar fácilmente mis cargas de un año al siguiente, y ver cómo iba mi entrenamiento, principalmente para eventos como el Maratón en carrera, donde la cantidad de entrenamiento es realmente bueno ver sobre la fatiga, etc.

¡Salud!

Yo diría que los valores fijos son buenos para el rango: 1 semana, 2 semanas, 1 mes, 3 meses, 6 meses, 1 año.
¿Quizás agregar 2 meses también?

Para los valores de la tabla y la descripción general, creo que manténgalo igual que las tablas de progresión existentes, es decir, delta con el año anterior y el actual, como sugiere.

"Rolling Streak Mode" me parece un nombre decente, ¡al menos no puedo pensar en nada mejor!

Gracias de nuevo por todo el tiempo y la experiencia que dedica a este proyecto. Se lo agradecemos mucho.

  • Y el "Modo Rolling Streak" => Necesito su ayuda para la redacción de marketing correcta;)

Puse la palabra "racha" entre comillas en mi publicación original, ya que las rachas significan algo específico para los corredores y son días consecutivos de carrera. Algunos corredores creen en NDO (sin días libres) y las rachas son el tiempo que puede pasar sin un día de descanso. Entonces, en ese sentido, llamarlo "Modo Rolling Streak" puede resultar confuso. Sugeriría algo como "Modo acumulativo rodante" o "Modo acumulativo con ventana", lo que implica una ventana de tiempo en la que tiene lugar la acumulación.

El "Modo de racha continua" tendrá un valor de día continuo personalizable de 1 a 365 . ¿Deberíamos restringir esto a valores fijos? Me refiero a 1 semana , 2 semanas , 1 mes , 3 meses , .. 6 meses , 1 año . Es posible que algunos usuarios no sepan qué recuento de días es el mejor, supongo.

Sugeriría dar una opción para unidades (días, meses, años) y un número. Por ejemplo, me encantaría tener mi acumulación acumulada de 2 años, ya que correr es un juego largo. Además, sería bueno dar la opción de superponer 2-3 parámetros diferentes, por ejemplo, 30 días y 1 año uno encima del otro, ya que el último es una versión más "suavizada" del primero. Por supuesto, para que el eje y tenga sentido, sería necesario trazar un valor promedio, no total, ya que los totales son drásticamente diferentes. El promedio podría mostrarse semanalmente que muchos corredores siguen. Entonces, en mi tabla por encima de 3000mi / año corresponden a 58 / semana. Entonces, si tuvieras que graficar 30 días y 1 año uno encima del otro, verías cuánto te desvías del objetivo de 58 millas / semana.

El "Modo Rolling Streak" se aplicará a todos los tipos de progreso: distancia , tiempo , elevación y conteo .

Suena bien y tiene sentido.

¿Todavía no sé qué podemos mostrar en la tabla (lado derecho)? ¿El delta rodante entre años? ¿Qué pasa con los objetivos?

No incluí esto en la tabla anterior, pero también hago un seguimiento de cuánto tiempo se tarda en alcanzar el siguiente umbral o delta, como usted dice. Uno no quiere pasar de un umbral a otro demasiado rápido, ya que esta es la receta para las lesiones / el agotamiento. Lo que puedo ofrecer aquí es que será bueno tener los umbrales configurables por el usuario en total (1000, 2000, 3000mi, etc.) o por semana (10, 20, 30mi, etc.) y luego mostrar cuántos días o meses han superado el umbral que es algo que irá aumentando cada día.

¡Estaré atento al hilo y gracias de nuevo por estar dispuesto a volver a presentar esta increíble función!

  • El "Modo acumulativo estándar" que existe actualmente en la aplicación

También sugeriría en el modo estándar agregar la opción mensual, no solo anual. Muchos corredores compiten en la misma carrera año tras año, por lo que sería bueno tener un "reinicio" por mes para comparar cómo se comparó la acumulación de enero de 2019 con la acumulación de 2018, si eso tiene sentido. En este punto, todo esto es una característica lenta :), así que estaría más que feliz si restablecieras la funcionalidad anterior :)

En realidad, ¿qué pasa con una simple "suma móvil" ? El modo estándar es más como "Suma YTD" (Año hasta la fecha). Solo un pensamiento.

Entonces comencé el desarrollo hace 2 días.

Lo usé en este momento:

export enum ProgressionMode {
    STANDARD_CUMULATIVE,
    ROLLING_CUMULATIVE
}

@mathin "Rolling Sum" y "Year to Date Sum" parece mucho más simple. Puedo encenderlos. ¿Qué les parece a los demás?

¡¡Algunos resultados aquí !! :) Terminé de codificar la lógica principal a través de TDD. Y después de algunas omisiones en la interfaz de usuario, aquí hay algunos resultados:

"Suma móvil de 30 días"

image

"Suma acumulada de 3 meses" :

image

"Suma móvil de 1 año" :

image

La "Suma del año hasta la fecha" asociada:

image

Y el legado "Distancia de los últimos 30 días " para comparar con la

image

Parece perfecto, ¡muchas gracias por empezar a implementar algo tan rápido!

¡¡Algunos resultados aquí !! :) Terminé de codificar la lógica principal a través de TDD. Y después de algunas omisiones en la interfaz de usuario, aquí hay algunos resultados:

¡Eso es absolutamente asombroso! ¡Muchas gracias, no puedo esperar para comenzar a usar las nuevas métricas!

Una pequeña pregunta / comentario. Cuando comparo (solo visualmente, por supuesto) el legado "Distancia de los últimos 30 días" con la nueva "Suma móvil de 30 días", me parece que la "Suma móvil" es más "irregular" o, a la inversa, que el legado "Últimos 30 días". parece un poco más suave. ¿Es esto solo un artefacto de las funciones de trazado o hay algún suavizado de datos adicional en el código heredado?

¡¡¡Gracias de nuevo!!!

@mathin Es solo el modo d3 curveLinear que uso: https://github.com/d3/d3-shape#curveLinear

Usando _curveNatural_ da que:

image

@mathin otra vez. Acerca de sus solicitudes:

Además, sería bueno dar la opción de superponer 2-3 parámetros diferentes, por ejemplo, 30 días y 1 año uno encima del otro, ya que el último es una versión más "suavizada" del primero. Por supuesto, para que el eje y tenga sentido, sería necesario trazar un valor promedio, no total, ya que los totales son drásticamente diferentes. El promedio podría mostrarse semanalmente que muchos corredores siguen.

Parece mucho más difícil hacerlo "rápido", tal vez rastrearlo en una nueva edición para hacerlo más tarde.

Entonces, en mi tabla por encima de 3000mi / año corresponden a 58 / semana. Entonces, si tuvieras que graficar 30 días y 1 año uno encima del otro, verías cuánto te desvías del objetivo de 58 millas / semana.

Me perdiste :)

Algunas actualizaciones de la interfaz de usuario y "Suma progresiva de elevación de 6 semanas" :

image

¡Esto se ve muy bonito y prometedor!
Yo preferiría una suma renovable de 4 semanas durante 30 días / 1 mes, y 13 semanas durante 3 meses.
Como la mayoría de las personas suelen hacer ejercicio el mismo día de la semana.
El uso del ritmo semanal en cada viaje del domingo reemplaza el viaje del domingo X-back, por lo que la línea será mucho más suave y tendrá muchos menos bamboleos.

Yo preferiría una suma renovable de 4 semanas durante 30 días / 1 mes, y 13 semanas durante 3 meses.
Como la mayoría de las personas suelen hacer ejercicio el mismo día de la semana.

Ese es un gran punto, también me gustaría ver la suma móvil de 4 semanas en lugar de 30 días. Y por cierto, creo que tenías la intención de escribir 12 semanas, no 13, ¿verdad?

@bkleingoldewijk @mathin Puede elegir el período que desee. Simplemente multiplique por el número que necesita.

image

¡Excelente!

Beto

Enviado desde mi iPhone

Op 12 feb. 2019 om 18:57 heeft Thomas Champagne < [email protected] [email protected] > het volgende geschreven:

@bkleingoldewijk https://github.com/bkleingoldewijk @mathin https://github.com/mathin Puede elegir el período que desee. Solo multiplique por el número que necesita.

[imagen] https://user-images.githubusercontent.com/151973/52657012-f395ee80-2ef7-11e9-81c4-5b43b4792c70.png

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub https://github.com/thomaschampagne/elevate/issues/760#issuecomment-462865891 , o silencie el hilo https://github.com/notifications/unsubscribe-auth/AtN0S2opo7- OK64kFII6bAM1C2Dc1tzRks5vMwCMgaJpZM4ako11 .

También soy un gran admirador de los 30 días y los 365 días rodantes. Sin embargo, también segundo que 4 semanas consecutivas y 52 semanas serían más informativas, ya que tiendo a tener el mismo patrón de ciclismo en la semana. Muchas gracias.

Hay problemas con el color y el contraste. En este momento, 2019 en mis gráficos está usando un color muy oscuro sobre un fondo muy oscuro. La selección de color debe ser más cuidadosa o tener opciones para seleccionar de una paleta.

@jfhaugh, la paleta "rodante" se define aquí: https://github.com/thomaschampagne/elevate/blob/develop/plugin/app/src/app/year-progress/year-progress.component.ts#L43

Puedes darme tu lista;)?

(debería funcionar también en el tema ligero)

Podría ayudar: https://color.adobe.com/create/color-wheel/

Aquí hay una primera compilación comprobable de progresiones acumuladas y del año hasta la fecha :

v6.9.2_stable_2019-02-23-14-06.zip

Nota: Para evitar una nueva sincronización, puede usar una copia de seguridad de su elevación "oficial" para restaurarla en esa compilación.

Por supuesto, su ayuda es bienvenida para:

  • Encuentra errores en casos comunes y retorcidos
  • Bríndeme ideas / texto para aumentar la comprensión de la función (especialmente la progresión continua que ciertamente es compleja para la mayoría de los usuarios). Por ejemplo, "Debajo del botón debe escribir esto: ", "Agregar una información sobre herramientas al pasar el mouse * y mostrar * *", etc.
  • Proporcionarme el contenido del cuadro de diálogo de ayuda (que se muestra al hacer clic en el botón (?))
  • Arregla mi inglés :)

Gracias por su ayuda y pruebas :)

Estuve esperando métricas continuas por un tiempo, bueno @thomaschampagne

Pestaña Progresiones de año

  • Sería incluso mejor si para la selección "Años" se pudiera ..

    • seleccionar todo

    • deseleccionar todo

    • invertir selección

    • últimos 5 años (p. ej.)

      (Nota: mi base de datos se remonta a 2003, pero los datos se vuelven cada vez más escasos a medida que retrocedo en el tiempo. Crea mucha distracción en los gráficos. También es laborioso seleccionar o anular la selección de casillas de verificación a lo largo de casi 20 años)

  • Los períodos continuos son una de las mejores características de este software. Patea traseros.

    • La ventana de tiempo deslizante personalizable sería perfecta

    • o incluir 4 semanas o 30 días

¡Sigan con el buen trabajo!

Actualicé el asistente de funciones si pudieras echar un vistazo a las mejoras en el texto y en inglés.

image

El archivo fuente que puede editar y publicar: https://github.com/thomaschampagne/elevate/blob/9632d6b28a4a7cfe57b1099c031f9856ae8c2855/plugin/app/src/app/year-progress/year-progress-helper-dialog/year-progress- helper-dialog.component.html

@thomaschampagne, gracias de nuevo por lanzar esta nueva y sorprendente funcionalidad.

Tengo un pequeño problema que informar. El otro día, configuré el intervalo móvil en 1 día y miré mis gráficos. Me sorprendió ver valores de 30mi + que me parecieron bastante extraños ya que no soy un tipo ultra. Nunca corro más de un maratón (solo en un día de carrera) e incluso incluyendo el calentamiento previo a la carrera (máximo 1 milla), nunca superaría un máximo de 27-28 millas en un solo día, y nunca más de 30 millas. Tras un examen más detenido, descubrí que el día de 30 millas ocurrió cuando había corrido una carrera larga de 22 millas y el día anterior una carrera fácil de 8 millas por un total de 30 millas.

Esto me hizo darme cuenta de que el intervalo continuo podría implementarse por horas. Es decir, probablemente las carreras de 22 millas y 8 millas ocurrieron en menos de 24 horas entre sí (pero en días distintos) y, por lo tanto, probablemente se contaron en el mismo intervalo continuo de 1 día. El mismo principio parece aplicarse a todos los intervalos continuos con respecto al número de días / semanas, etc. Esto suena como la funcionalidad "correcta" que se debe implementar, pero en la práctica una "cuantificación" del intervalo continuo probablemente sería más útil.

Una sugerencia sería cuantificar los intervalos en la medianoche para que digamos que un intervalo de 2 días cuente desde la medianoche hasta la medianoche en lugar de acumularse dentro del día. Espero que tenga sentido.

Gracias de nuevo y hágame saber lo que piensa y si necesito aclarar algo.

@mathin Probablemente

@mathin Probablemente

Hola @thomaschampagne . Haría lo que me pediste, pero no sé cómo (copia de seguridad + id / fechas, etc.). Si tiene tiempo para arreglar la funcionalidad, sería genial, pero no espero que lo haga, ya que entiendo que es su proyecto favorito. ¡Gracias de nuevo por la gran funcionalidad!

¿Fue útil esta página
0 / 5 - 0 calificaciones