我正在尝试根据数据库中的数据制作 HighChart 的折线图。 我从数据库中获取了数据,因为我可以在控制台中看到该数据。
我使用的 php 代码是:
<?php
$query = "
SELECT YEAR(created_at) AS year,
MONTHNAME(created_at) AS month,
COUNT(*) AS count
FROM users
GROUP BY month ASC ORDER BY created_at ASC
" ;
$result = mysqli_query($conn, $query) ;
while ($row = mysqli_fetch_assoc($result)) {
$data1[] = $row['month'];
$data2[] = $row['count'];
}
?>
现在我在 Highchart 的脚本中获取数据如下:
<script type="text/javascript">
$(function () {
$('#container').highcharts({
chart: {
type: 'line',
},
title: {
text: 'Download Trends'
},
credits: {
enabled: false
},
xAxis: {
categories: ['<?php echo join($data1, "','"); ?>'],
},
yAxis: {
min: 0,
title: {
text: 'No. of Downloads'
}
},
plotOptions: {
column: {
pointPadding: 0.2,
borderWidth: 0
}
},
series: [{
name: 'Qty',
data: ['<?php echo join($data2, "','"); ?>'],
}]
});
});
</script>
我使用带有 id 容器的容器 div,如下所示:
<div id="container"></div>
问题是数据没有以正确的方式显示。它只显示了一半的数据,如下所示:
它没有显示线路。 请帮忙
最佳答案
您的数据系列由字符串组成,Highcharts 可以处理此类图表的数字。
删除数据部分中的简单引号,它应该可以工作:
data: [<?php echo join($data2, ","); ?>]
关于javascript - Highcharts : Line Chart not Loading the data from Database on screen,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55452111/