La respuesta de @elo es correcta y votó a favor, aunque tuve que ordenarla un poco para que quede más clara:
const myChartEl = document.getElementById('the-id-name');
const myChart = Highcharts.charts[myChartEl.getAttribute('data-highcharts-chart')];
myChart
luego se convierte en un objeto Highcharts en vivo que expone todos los accesorios actuales presentes en el gráfico que se representa en el myChartEl
. Dado que myChart
es un objeto de Highcharts , uno puede encadenar métodos de prototipo inmediatamente después, extenderlo o hacer referencia a él.
myChart.getTable();
myChart.downloadXLS();
setTimeout(() => Highcharts.fireEvent(myChart, "redraw"), 10);
También se puede obtener myChart
a través .highcharts()
, que es un jQuery
plugin:
var myChart = $("#the-id-name").highcharts();
El enfoque del jQuery
complemento anterior requiere jQuery
que se cargue antes de que se use el complemento y, por supuesto, el complemento en sí. Fue la ausencia de este complemento lo que me llevó a buscar formas alternativas de lograr lo mismo con JavaScript puro.
Al utilizar el enfoque JS puro, pude hacer lo que necesitaba (el segundo fragmento de código) sin tener que depender dejQuery
: