Skip to content

Instantly share code, notes, and snippets.

@savayer
Created April 15, 2017 08:03
Show Gist options
  • Save savayer/751f411986a7fdc2123231aab847d451 to your computer and use it in GitHub Desktop.
Save savayer/751f411986a7fdc2123231aab847d451 to your computer and use it in GitHub Desktop.
// Load the Visualization API and the corechart package.
google.charts.load('current', {'packages':['corechart']});
// Set a callback to run when the Google Visualization API is loaded.
/* google.charts.setOnLoadCallback(drawChartAge);
google.charts.setOnLoadCallback(drawChartSex);
google.charts.setOnLoadCallback(drawChartEducation);
google.charts.setOnLoadCallback(drawChartFamily);
google.charts.setOnLoadCallback(drawChartActivity);*/
// Callback that creates and populates a data table,
// instantiates the pie chart, passes in the data and
// draws it.
function prepareData(elem) {
name_array = [];
elem.each(function(index) {
textnow = $(this).text();
if (index > 0) {
if (tmp == textnow) {
name_array[textnow] = name_array[textnow]+1;
} else {
if ((name_array[textnow]) == null) {
name_array[textnow] = 1;
} else {
name_array[textnow] = name_array[textnow]+1;
}
}
} else {
name_array[textnow] = 1;
}
tmp = $(this).text();
});
len = Object.keys(name_array).length;
//console.log(name_array);
arr = [];
i=0;
for (var key in name_array) {
arr[i] = [];
arr[i][0] = key;
arr[i][1] = name_array[key];
i++;
}
}
function drawChartAge() {
// Create the data table.
prepareData($('.age_for_diagramm'));
var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows(arr);
var options = {'title':'Возраст',
'width':400,
'height':300};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_age'));
chart.draw(data,options);
}
function drawChartSex() {
// Create the data table.
prepareData($('.sex_for_diagramm'));
var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows(arr);
var options = {'title':'Пол',
'width':400,
'height':300};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_sex'));
chart.draw(data,options);
}
function drawChartEducation() {
// Create the data table.
prepareData($('.education_for_diagramm'));
var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows(arr);
var options = {'title':'Образование',
'width':400,
'height':300};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_education'));
chart.draw(data,options);
}
function drawChartFamily() {
// Create the data table.
prepareData($('.family_for_diagramm'));
var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows(arr);
var options = {'title':'Семейное положение',
'width':400,
'height':300};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_family'));
chart.draw(data,options);
}
function drawChartActivity() {
// Create the data table.
prepareData($('.activity_kind_for_diagramm'));
var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows(arr);
var options = {'title':'Вид деятельности',
'width':400,
'height':300};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_activity_kind'));
chart.draw(data,options);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment