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

225
Views
js highcharts, teniendo problemas para crear la serie de gráficos

Estoy usando esto como un ejemplo

https://jsfiddle.net/kkulig/0k4m5d2q/

Eliminé las partes donde usa datos codificados para estas líneas

Reemplazó esto

 var originalCategories = [new Category('A'), new Category('B'), new Category('C')].map(function(cat, i) { cat.index = i; return cat });

Con este

 array_axis= ['2015', '2016', '2017', '2018', '2019', '2020'];//this comes from my DB const originalCategories = array_axis.map(x => (new Category(x))).map((c, i) => { c.index = i; return c; });

y esto

 var originalSeries = [{ data: [5, 3, 2].map((y, i) => new Point(originalCategories[i], y)) // automatically assign category }, { data: [1, 7, 4].map((y, i) => new Point(originalCategories[i], y)) // -//- }];

Con esto (creo que esta es la parte del código que no funciona)

 array_x =[{name: '15 a 24 años', data: '23.9,25.4,25.4,23.1,21.8,26.8'}, {name: '25 a 34 años', data: '20.8,24.3,20.0,17.5,18.0,20.4'}, {name: '35 a 44 años', data: '22.3,24.6,23.5,21.7,19.6,24.1'}, {name: '45 a 64 años', data: '20.9,21.6,21.3,18.0,18.8,20.6'}, {name: '65 años y más', data: '21.7,22.7,18.9,17.5,18.1,19.4'}, {name: 'Menor de 15 años', data: '36.9,40.1,35.9,34.2,33.1,37.0'}];//this also comes from my DB var originalSeries = []; $.each(array_x, function(key, value) { var unformated_data = value.data; var graph_data = unformated_data.split(',').map(parseFloat); originalSeries.push(graph_data.map((y, i) => new Point(originalCategories[i], y))) // automatically assign category });

pero el gráfico no se muestra y recibo un mensaje de error: jquery.min.js: 2 TypeError no detectado: no se pueden leer las propiedades de undefined (leyendo 'longitud')

no estoy seguro de lo que estoy haciendo mal. También necesito mostrar el nombre de cada serie (los que están dentro de array_x) en lugar de la serie 1, la serie 2,...

Ya probé el código con datos codificados en la serie original y funciona bien.

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Tenga en cuenta que array_x es un objeto, no una matriz, por lo que usar $.each devuelve un error.

about 4 years ago · Santiago Trujillo Report

0

Estoy compartiendo mi violín de cómo se ve el código ahora para que todos los demás lo vean, si están interesados en resolver un problema similar o planean crear algo similar a esto.

Este es el resultado final de lo que necesitaba lograr. Espero que alguien encuentre esto útil. Gracias a Sebastian Wędzel por la ayuda.

Aquí es donde presiono los valores dentro de la matriz seriesName

 var originalSeries = []; var seriesName = []; $.each(array_x, function(key, value) { var graph_data = value.data.split(',').map(parseFloat); seriesName.push(value.name);//This I will use for my series name originalSeries.push(graph_data.map((y, i) => new Point(originalCategories[i], y))) // automatically assign category });

Y aquí es donde configuro los nombres de mi serie usando esa matriz

 function filterSeries() { var filteredSeries = []; $.each(originalSeries, function(i, serie) { // serie options are merged during update, // so it's enough to initialize serie object only with data property var newSerie = { data: [] }; //newSerie.name = serie[i].y.name; newSerie.name = seriesName[i]; $.each(serie, function(i, point) { if (point.category.visible) { newSerie.data.push(point); } }); filteredSeries.push(newSerie); }); return filteredSeries; }

https://jsfiddle.net/on2z6tmr/19/

about 4 years ago · Santiago Trujillo 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!