Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

288
Views
Cómo encontrar la suma de datos de agrupación en gráficos altos

Estoy trazando datos en gráficos altos, pero quiero tomar la suma de los datos de agrupación y luego trazar esa suma en el gráfico alto, actualmente puedo trazar en un solo dígito, pero quiero tomar la suma de los datos de agrupación y luego trazarlos según las categorías.

Estoy usando el siguiente código, pero solo puedo imprimir un solo punto de datos, pero quiero la suma de dígitos:

 const initialSeries = [{ name: 'Tokyo', data: [ ["tokyo", 10], ["tokyo", 63], ["tokyo", 50], ["tokyo", 54], ["tokyo", 49], ["tokyo", 33], ["tokyo", 17], ["tokyo", 15], ["tokyo", 11] ] }, { name: 'New York', data: [ ['New York', 56], ['New York', 79], ['New York', 97], ['New York', 18.4], ['New York', 65], ['New York', 140.5], ['New York', 43], ['New York', 88], ['New York', 4] ] }, { name: 'London', data: [ ['London', 9], ['London', 30], ['London', 51], ['London', 58], ['London', 56], ['London', 285], ['London', 11], ['London', 414], ['London', 53], ['London', 8], ['London', 145], ['London', 2] ] }, { name: 'Berlin', data: [ ['Berlin', 14], ['Berlin', 136], ['Berlin', 82], ['Berlin', 56], ['Berlin', 79], ['Berlin', 97], ['Berlin', 18], ['Berlin', 65], ['Berlin', 14], ['Berlin', 43], ['Berlin', 88], ['Berlin', 4] ] }]; const parsedData = initialSeries.map(s => ({ name: s.name, data: s.data.map(d => [d[0].toString(), d[1]]) })); Highcharts.chart('container', { chart: { type: 'column', }, title: { text: 'Monthly Average Rainfall' }, subtitle: { text: 'Source: WorldClimate.com' }, xAxis: { type:'category', crosshair: true }, yAxis: { min: 0, title: { text: 'Rainfall (mm)' } }, tooltip: { headerFormat: '<span style="font-size:10px">{point.key}</span><table>', pointFormat: '<tr><td style="color:{series.color};padding:0">{series.name}: </td>' + '<td style="padding:0"><b>{point.y:.1f} mm</b></td></tr>', footerFormat: '</table>', shared: true, useHTML: true }, plotOptions: { column: { pointPadding: 0.2, borderWidth: 0 } }, series: parsedData });

Cualquier ayuda sería muy apreciada. Gracias por adelantado

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Puede usar reduce para crear la estructura de datos requerida por Highcharts. Ejemplo:

 const parsedData = initialSeries.map(s => ({ name: s.name, data: [ s.data.reduce((result, currentEl) => { return [result[0], result[1] += currentEl[1]] }, [s.name, 0]) ] }));

Demostración en vivo: http://jsfiddle.net/BlackLabel/rbdLnf4a/

Referencia de la API: https://api.highcharts.com/highcharts/series.column.data

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!