mysql数据库包含三个元素:id,datetime和data。如何从mysql数据库中提取数据并使用yii-framework将它们绘制在高位图表中
请亲切地帮我检查我的代码有什么问题。我想从MySQL数据库中提取最新的15个数据并将它们绘制成高图。然而,我只能在我的x轴旁边的图表上显示最新的单个数据,但没有显示日期时间数据。
我试着在网页http://www.highcharts.com/demo/line-basic上提供的代码,但是它仅用于预定义值而不是用于mysql数据库值。
我试着编辑它,下面是我的代码。
<script scr = "//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src='http://code.highcharts.com/highcharts.js' type='text/javascript'> </script>
<script src='http://code.highcharts.com/modules/exporting.js' type='text/javascript'> </script>
</head>
<?php
$rowsA = array();
$rowsA[]= Yii::app()->db->createCommand("Select data from customername order by id desc limit 15")->queryScalar();
$datedata[] = Yii::app()->db->createCommand("Select date from customername order by id desc limit 15")->queryScalar();
>
<script type = "text/javascript">
$(function() {
$('#container').highcharts({
chart: {
type: 'line',
marginRight: 130,
marginBottom: 25
},
title: {
text: 'BABY BODY TEMPERATURE',
x: -20
},
xAxis: {
// type: 'datetime',
// dateTimeLabelFormats:{
// month: '%e, %b',
// year: '%b'}//can work
// categories: ['<php echo join($datedata, "','") ?>'],
// categories: [<php echo join($datedata, "','"); ?>],
// },
},
yAxis: {
title: {
text: 'Temperature (°C)'
},
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
},
tooltip: {
valueSuffix: '°C',
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'top',
x: -10,
y: 100,
borderWidth: 0
},
series: [{
name: 'Baby Temperature',
data: [<?php echo join($rowsA, "','");?>]
//predefined data is working fine.
// data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
}]
});
});
</script>
我想我是能够提取MySQL数据和highcharts为x轴绘制它后在数量上形成了1,2,3,......然后我会尽量显示x轴的datetime 。然而,我在我的第一个阶段陷入困境;只能显示单个最新数据,而我想要的是15个数据。
如果有人能帮助我,我将非常感激。非常感谢。
感谢您抽出宝贵:
然后在你的阴谋使用您宝贵的时间来回答我的问题。 :)我会尝试解决你的方法,并看看第一。再次感谢你。 – user1834890
嗨,你会介意澄清你的答案更高?我的图表现在变空了。我很抱歉。 :( – user1834890
尝试使用http://www.yiiframework.com/extension/highcharts/。它的包装,所以你可以使用PHP来绘制你的图表.Emmpty情节意味着:a)你的数据数组是空的; b)你试图给系列提供非int值; c)你的陈述中有错误。如果您在js上使用经典的highcharts,您可以将代码推送到jsfiddle。尝试阅读文档维基的。 – ineersa