Files
TeraHz/frontend/frontend.js
2019-04-15 17:43:34 +02:00

39 lines
1023 B
JavaScript

var globalObject;
$('#update').click(function () {
updateData(globalObject);
fillTable(globalObject, $('table'));
graphSpectralData(globalObject, $('#spectrogram'));
});
// jQuery event binder
function updateData (obj) {
// download data from backend into obj
const url = 'http://' + window.location.hostname + ':5000/data';
// I understand how bad this line looks. Please don't judge me...
$.get(url, function (data, status) { // standard jQuery AJAX
obj = data;
});
}
function fillTable (obj, dom) {
// applies data in obj[0] to HTML tags with the obj's key as ID.
// useful mostly for slapping spectrometer JSON into HTML tables.
for (var i in obj[0]) {
$(dom).find('#' + i).text(obj[0][i]);
}
}
function graphSpectralData(obj, dom) {
// graphs the data from obj[0] into canvas at dom
var chart = new Chart(dom, {
type: 'line',
data: {
labels: obj[0].keys(),
datasets: [{
label: 'Spectrometer data',
data: obj[0].values()
}]
}
});
}