Estoy construyendo un gráfico de valores altos con un gran conjunto de datos de una serie. Por razones de rendimiento, quiero cargar el conjunto de datos más pequeño al principio llamado 'Serie 1' (desde hace una hora hasta ahora) y luego necesito agregar a esta 'Serie 1' los siguientes puntos con datos desde hace dos años hasta uno hace una hora. Los puntos de datos se almacenan cada minuto desde hace 2 años hasta ahora.
El método para obtener los siguientes puntos y trazar el código es el siguiente:
$.getJSON('dashboard/values.php?start='+ min +'&end=' + max, function(myData) { var seriesOptions = { name: 'water depth', yAxis: 0, id: 'depth', data: myData }; var navigatorOptions = { yAxis: 1, data: myData }; var obj = eval('[' + myData + ']'); seriesOptions.data = obj; chart.addSeries(seriesOptions); var nav = chart.get('navigator'); nav.setData(myData, false); chart.xAxis[0].setExtremes(); });Tengo dos problemas para resolver:
El archivo valores.php es:
<?php header('Content-Type: text/JSON'); //... some SQL connection and query stuff if ($result = $mysqli->query($sql)) { $emptyarray = array(); while($row = $result->fetch_assoc()) { extract($row); $emptyarray[] = "[$datetime, $water_depth]"; } $result->free(); } $mysqli->close(); echo json_encode($emptyarray);Además, si tiene alguna otra idea sobre cómo mostrar el gráfico con un gran conjunto de datos con una buena velocidad de rendimiento, compártala. No quiero crear cuatro tablas de datos que contengan datos de minutos, horas, días y meses, respectivamente, como se describe en este artículo .