Я использую символы Google для рисования круговых и гистограмм с данными, поступающими из базы данных. Я использую PHP и JavaScript.
У меня есть следующий код:
// Load the Visualization API and the piechart package.
google.load('visualization', '1.0', {'packages':['corechart'], callback: function(){
// check what chart to draw (pie or bar chart)
if(tipoghs[0] == 'PICH')
{
// Create our data table out of JSON data loaded from server.
var data = new google.visualization.DataTable();
data.addColumn('string', 'Ventas');
data.addColumn('number', titles[0]);
for(var i = 0;i < size;i++)
{
data.addRows([[dfilas[i], parseFloat(dcolumnas[i])]]);
}
// Set chart options
var options =
{
'title' : 'Cantidad Total de Entradas',
'width' : 400,
'height': 300,
backgroundColor: 'transparent',
chartArea:
{
left: "3%",
top: "10%",
height: "100%",
width: "70%"
}
};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('ficContainer'));
chart.draw(data, options);
}
// check what chart to draw (pie or bar chart)
else if(tipoghs[0] == 'COCH')
{
// Create our data table out of JSON data loaded from server.
var data = new google.visualization.DataTable();
data.addColumn('string', 'Ventas');
data.addColumn('number', titles[0]);
for(var i = 0;i < size;i++)
{
data.addRows([[dfilas[i], parseFloat(dcolumnas[i])]]);
}
// Set chart options
var options =
{
title: titles[0],
hAxis:
{
viewWindow:
{
min: [7, 30],
max: [17, 30]
}
},
vAxist:
{
title: "Meses"
}
};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.ColumnChart(document.getElementById('ficContainer'));
chart.draw(data, options);
}
}
Я делаю вызов AJAX для получения данных с сервера. Одна из точек данных, поступающих из базы данных, — хочу ли я нарисовать круговую или гистограмму (условие, которое вы найдете в коде javascript).
По какой-то причине, когда я открываю веб-сайт в IE 9 и устанавливаю точку данных в БД как круговую диаграмму, это дает мне ошибку: Строка задана с размером, отличным от 0. Поскольку это круговая диаграмма в БД, он проходит через условие ЕСЛИ. Если я открываю в Google Chrome, он работает (не выдает сообщение об ошибке).
Если я устанавливаю диаграмму в виде гистограммы в БД, она работает в IE 9. Когда это гистограмма, она проходит через ELSE в приведенном ниже коде javascript.
Кто-нибудь знает, почему, когда он проходит через IF (круговую диаграмму), он выдает сообщение об ошибке в IE 9?
vAxis
, а неvAxist
. - person Lee Taylor   schedule 10.01.2016if
-- пример - person WhiteHat   schedule 10.01.2016data.addRows([[dfilas[i], parseFloat(dcolumnas[i])]]);
, вы уверены, что это не должно бытьdata.addRow
(без s)? Я имею в виду, что вы передаете данные только для одной строки (я просто предполагаю это, но это выглядит так...). - person Henrik Aronsson   schedule 11.01.2016