Skip to content

Instantly share code, notes, and snippets.

@maartenl
Last active January 13, 2017 06:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maartenl/9de4500f41ee41c82425 to your computer and use it in GitHub Desktop.
Save maartenl/9de4500f41ee41c82425 to your computer and use it in GitHub Desktop.
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var foreignData = computeMeasurements();
var dataArrays = [['Date', 'Weight (kg)', '10-Day Moving Average (kg)', 'Diet (kg)']];
var dataBmiArrays = [['Date', 'BMI', 'Underweight', 'Overweight', 'Obese']];
var dataImpedanceArrays = [['Date', 'Impedance', '10-Day Moving Average']];
for (var x in foreignData)
{
var prelim_array = [foreignData[x].registrationTimestamp, foreignData[x].weight, foreignData[x].averageWeight, foreignData[x].dietWeight];
dataArrays.push(prelim_array);
var prelim_array_bmi = [foreignData[x].registrationTimestamp, foreignData[x].bmi, 18.5, 25.0, 30.0];
dataBmiArrays.push(prelim_array_bmi);
if (foreignData[x].impedance !== 0) {
var prelim_array_impedance = [foreignData[x].registrationTimestamp, foreignData[x].impedance, foreignData[x].averageImpedance];
dataImpedanceArrays.push(prelim_array_impedance);
}
}
var data = google.visualization.arrayToDataTable(dataArrays);
var data_bmi = google.visualization.arrayToDataTable(dataBmiArrays);
var data_impedance = google.visualization.arrayToDataTable(dataImpedanceArrays);
var options = {
title: 'Weight over Time',
series: {
0: { lineWidth: 1 }, // the real weight
1: { lineWidth: 1, curveType: 'function' }, // curve
2: { lineWidth: 3 } // diet
}
};
var options_bmi = {
title: 'BMI over Time',
series: {
0: { lineWidth: 1 }, // the real weight
1: { lineWidth: 1, curveType: 'function' } // curve
}
};
var options_impedance = {
title: 'Impedance over Time',
series: {
0: { lineWidth: 1 }, // the real weight
1: { lineWidth: 1, curveType: 'function' } // curve
}
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
var chart_bmi = new google.visualization.LineChart(document.getElementById('bmi_div'));
chart_bmi.draw(data_bmi, options_bmi);
var chart_impedance = new google.visualization.LineChart(document.getElementById('impedance_div'));
chart_impedance.draw(data_impedance, options_impedance);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment