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

226
Vistas
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 Respuestas
Responde la pregunta

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 Denunciar

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 Denunciar
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