Estoy tratando de crear un gráfico que obtenga datos de un extremo de la API con datos de apertura, cierre, máximo y mínimo para un gráfico de barras como los que se ven para las acciones. Hago la solicitud de punto final y uso .map para alcanzar, por ejemplo, el valor bajo.
El problema es que el resultado debe multiplicarse por 213 antes de mostrarse en el gráfico. ¿Cómo puedo escribir un código que tome el valor de cada una de estas matrices, multiplique el valor interno por 213 y lo vuelva a colocar en el forma original para que el gráfico pueda usarlo?
código utilizado para llegar a los datos:
const usdlow =response2.data.data.ethereum.Trades.map(el => ({low: el.low}))*ejemplo
console.log(usdopen[1])resultado:
{open: 6.606731585128299}Hay alrededor de 5000 matrices para diferentes puntos.
Básicamente, quiero obtener este valor abierto, multiplicarlo por 213 y luego volver a colocarlo para que el gráfico pueda tomarlo y usarlo.
No he podido hacer que esto vuelva a la forma original para que el gráfico pueda usarlo, creo que el método que uso no funciona para matrices como esta. Agradecería cualquier ayuda, gracias por su tiempo.
En realidad, es fácil. Si tiene una matriz de objetos, puede usar el operador de distribución para distribuir el resto del objeto y multiplicar los valores que desea cambiar por 213:
let arr = [ { key: 1, value: 10 }, { key: 2, value: 103 }, { key: 3, value: 45 }, { key: 4, value: 89 }, ]; arr = arr.map((item) => { return { ...item, value: item.value * 213 }; }); console.log(arr); // expected output: [ { key: 1, value: 2130 }, { key: 2, value: 21939 }, { key: 3, value: 9585 }, { key: 4, value: 18957 } ]Et voilà... los valores cambiaron. 🤓