#javascript #php #chart.js
#javascript #php #chart.js
Вопрос:
Это мой фрагмент кода с моей веб-страницы. Я пытаюсь составить график процента посещаемости учащегося с конкретным идентификатором предмета, скажем- CSE2006.
<div id="chart-container">
<canvas id="graphCanvas"></canvas>
</div>
<script>
$(document).ready(function () {
showGraph();
});
function showGraph()
{
{
$.post("pra.php",
function (data)
{
console.log(data);
var subject = [];
var attendance= [];
for (var i in data) {
subject.push(data[i].subid);
attendance.push(data[i].at);
}
var chartdata = {
labels: subject,
datasets: [
{
label: 'Student Attendance',
backgroundColor: '#49e2ff',
borderColor: '#46d5f1',
hoverBackgroundColor: '#CCCCCC',
hoverBorderColor: '#666666',
data: attendance
}
]
};
var graphTarget = $("#graphCanvas");
var barGraph = new Chart(graphTarget, {
type: 'bar',
data: chartdata,
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero: true,
fixedStepSize: 5,
max: 100,
min: 0
},
gridLines: {
color: 'black',
zeroLineColor: 'black',
zeroLineWidth: 4
}
}],
xAxes: [{
gridLines: {
display:false,
zeroLineWidth: 4,
},
barPercentage: 1.0,
categoryPercentage: 0.1
}]
}
}
});
});
}
}
</script>
Я не знаю точно, в чем проблема, поскольку консоль браузера не показывает никакой ошибки. Я включил все файлы javascript выше.
pra.php выдает такой результат
[{"subid":"CSE1004","at":100},{"subid":"CSE2006","at":0}]
Комментарии:
1. Запишите свой
chartdata
объект в консоль и посмотрите, соответствует ли он статической, рабочей версии, которая, как я полагаю, у вас была раньше.