您好,欢迎访问一九零五行业门户网

用php+ajax+echarts.js 实现统计每分钟答题曲线图

接着上一篇博客,除了实现统计总量外,我还用百度的echart实现了 统计答题曲线图。效果如下:http://newer.gailvlunpt.com/entranceeducation/admin.php/statis/index
百度echart是一个专业的花统计图,曲线图的第三方js类库。按照使用说明使用还是蛮简单的。
源代码如下
前端 html+js+css代码如下
{__nolayout__} <!doctype html> <html> <head> <meta charset="utf-8"> <!-- 引入 echarts 文件 --> <script src="__public__/admin/js/echarts.common.min.js"></script> <script src="__public__/admin/js/jquery.min.js"></script> </head> <body> <!-- 为 echarts 准备一个具备大小(宽高)的 dom --> <p id="main" style="width: 1400px;height:600px;"></p> <a href="{:u('sum')}" target="_blank">实时统计平台答题总量</a> </body> </html> <script type="text/javascript"> var mychart = echarts.init(document.getelementbyid('main')); option = { title : { text: '过去3小时答题情况', subtext: '浙江工商大学新生事业教育平台试试答题数据' }, tooltip : { trigger: 'axis' }, legend: { data:['过去3小时答题量'] }, calculable : true, xaxis : [ { type : 'category', boundarygap : false, data : [] } ], yaxis : [ { type : 'value', axislabel : { formatter: '{value}' } } ], series : [ { name:'实时答题统计', type:'line', data:[], }, ] }; // 使用刚指定的配置项和数据显示图表。 url = "{:u('statis/data')}"; mychart.setoption(option); // url = 'http://newer.gailvlunpt.com/entranceeducation/admin.php/statis/data'; $.get(url).done(function (data) { // 填入数据 mychart.setoption({ xaxis: { data: data.x_data }, series: [{ // 根据名字对应到相应的系列 data: data.y_data }] }); }); setinterval(function () { $.get(url).done(function (data) { // 填入数据 mychart.setoption({ xaxis: { data: data.x_data }, series: [{ // 根据名字对应到相应的系列 data: data.y_data }] }); }); }, 60000); //一秒钟统计一次 </script>
后台php代码
public function data() { $now = time(); // $timearray = new array(); for($i=1;$i<=180;$i++){ $time = $now - 3 * 60 * 60 + 60 * $i; $timearray[] = date('y-m-d h:i', $time); $map['time'] = array('between',array(date('y-m-d h:i', $time),date('y-m-d h:i', $time+60))); $dataarray[] = d('exercise')->where($map)->count(); } $data = array( 'x_data'=>$timearray, 'y_data'=>$dataarray ); $this->ajaxreturn($data); }
用每时间分钟作为横坐标,答题数据量作为纵坐标 画图
以上就是用php+ajax+echarts.js 实现统计每分钟答题曲线图 的详细内容。
其它类似信息

推荐信息