Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

193
Vistas
Dificultad de ChartJS con el eje X y extracción de datos apropiados

Tengo algunas dificultades para iterar sobre algunos datos json y mostrar el eje X adecuado (fecha/hora). Intenté varias veces recorrer los datos json para extraer el tiempo de cada trabajador en el "historial", pero no tuve éxito.

Aquí hay una muestra de JSON: https://github.com/devdevdevdev1/rvnpoolcharts/blob/main/samplejson.json

Y aquí está mi código: https://github.com/devdevdevdev1/rvnpoolcharts/blob/main/worker_stats.js

Para que funcione (algo), acabo de arrojar 48 números aleatorios como puntos en el eje x:

 displayWorkerHashrateGraph(Array.from(Array(48).keys()), dataset, label);

pero obviamente hay varios problemas con esto, como si un nuevo trabajador se une después de que uno ya ha estado reportando, comienza en 1 y no se alinea con los otros trabajadores.

Puede ver aquí que no hay fechas/horas en el eje x, y la etiqueta dice 78 en lugar de una etiqueta de fecha. Gráfico actual

También intenté recorrer la lista de cada trabajador y extraer el tiempo de esta manera:

 let labelsList = []; let historyList = []; //Begin History Loop for (var w in workerData.history) { var worker = getWorkerNameFromAddress(w); var a = { key: worker, hashrate: [] }; for (var wh in workerData.history[w]) { a.hashrate.push([workerData.history[w][wh].time * 1000, workerData.history[w][wh].hashrate]); labelsList.push([w, workerData.history[w][wh].time * 1000]); } historyList.push(a);

Pero eso termina pareciéndose a esto : parece que se está tomando el tiempo para los 3, pero no se alinea con el hashrate y empuja todos los valores hacia la izquierda.

Lo que estoy tratando de lograr:

  1. Obtenga el valor de tiempo para cada iteración de trabajador del elemento de historial, independientemente de cuándo un trabajador comience a informar.
  2. Marque el hashrate en el gráfico en la fecha/hora adecuada
  3. Mostrar solo la última hora de estadísticas (BONIFICACIÓN: una forma de alejarse para ver las 12 horas de estadísticas)

Realmente agradecería cualquier ayuda que pueda brindar, soy un poco nuevo en javascript y he intentado muchas veces lograr lo anterior y me he estado golpeando la cabeza contra la pared. ¡Gracias por adelantado!

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda