What echo $callback ."([\n" . join(",\n", $rows) ."\n]);";
ritorna? Consiglio di trasformare il tuo array in json da json_encode() e quindi usarlo in javascript.
MODIFICA:
Non hai accesso al grafico nel tuo script, inoltre puoi usare setData solo su serie esistenti, non su serie che non esistono come chart.series[2]. Dovresti chiamare addSeries
val1 = [];
val2 = [];
val3 = [];
val4 = [];
val5 = [];
$.each(data, function (key, value) {
val1.push([value[0], value[1]]);
val2.push([value[0], value[2]]);
val3.push([value[0], value[3]]);
val4.push([value[0], value[4]]);
val5.push([value[0], value[5]]);
});
chart.series[0].setData(val1);
chart.addSeries({
data: val2
});
chart.addSeries({
data: val3
});
chart.addSeries({
data: val4
});
chart.addSeries({
data: val5
});
chart.hideLoading();