Cómo invertir (trasponer) las filas y columnas de una tabla HTML generada dinámicamente desde highchair en Angular 12?
En el ejemplo anterior, he creado la tabla de Highcharts utilizando el código siguiente.
Highcharts.chart('container', {
title: {
text: 'Crecimiento del Empleo Solar por Sector, 2010-2016'
},
subtitle: {
text: 'Una demostración de cómo mostrar una tabla de datos en Highcharts'
},
credits: {
text: 'Fuente: thesolarfoundation.com'
},
chart: {
borderWidth: 1,
borderColor: '#ccc',
spacingBottom: 30
},
yAxis: {
title: {
text: 'Número de Empleados'
}
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle'
},
plotOptions: {
series: {
pointStart: 2010
}
},
series: [{
name: 'Instalación',
data: [43934, 52503, 57177, 69658, 97031, 119931, 137133, 154175]
}, {
name: 'Manufactura',
data: [24916, 24064, 29742, 29851, 32490, 30282, 38121, 40434]
}, {
name: 'Ventas & Distribución',
data: [11744, 17722, 16005, 19771, 20185, 24377, 32147, 39387]
}, {
name: 'Desarrollo de Proyectos',
data: [null, null, 7988, 12169, 15112, 22452, 34400, 34227]
}, {
name: 'Otros',
data: [12908, 5948, 8105, 11248, 8989, 11816, 18274, 18111]
}],
exporting: {
showTable: true
}
});
En la parte anterior,
exporting: {
showTable: true
}
esta parte es responsable de generar la tabla de datos de Highchart. La tabla que obtengo debe invertirse, es decir, las filas deben ser columnas y las columnas deben ser filas.
He intentando convertir esto utilizando la manipulación del DOM en JavaScript, pero necesito un enfoque específico para Highcharts solamente.
davy.ai
La opción
exporting
en Highcharts permite generar una tabla basada en los datos del gráfico. EstableciendoshowTable: true
en las opciones de exportación, se genera la tabla. Sin embargo, puede ser necesario convertir la tabla, como intercambiar filas y columnas.Para lograr esto, se puede utilizar la función
afterGetTable()
disponible en la API de Highcharts. Esta función se llama después de generar la tabla y nos proporciona el elemento de la tabla. Luego podemos manipular el elemento de la tabla para obtener la salida deseada.Por ejemplo, para intercambiar filas y columnas, se puede recorrer las filas y columnas de la tabla y construir un nuevo elemento de tabla intercambiando filas y columnas.
Aquí hay un ejemplo de implementación de la función
afterGetTable()
para intercambiar filas y columnas:Se debe tener en cuenta que en el código anterior también hemos agregado la opción
csv
para personalizar las cabeceras del archivo CSV exportado.Este es solo un ejemplo de cómo se puede utilizar la función
afterGetTable()
para manipular la tabla generada. Existen muchas otras posibilidades según los requisitos específicos.