php原生态与百度echarts联合制作数据图表
2017-02-22 18:19
507 查看
php原生态与百度echarts联合制作饼状图:
需要的文件如下:1、switch.php 这个是转换文件,也是主要的显示区域;
2、connect.php 这个是数据库连接文件;
以下是switch.php文件:
<?php session_start(); // 把表名文件名保存到session,带到文件导出页面备用 $_SESSION['titlesql']='ip'; $_SESSION['contentsql']=$sql; $_SESSION['fileName']=$commit; // 引入数据库链接文件 include_once 'connect.php'; //获取上一个页面,选择要查询的字段 $page=$_POST['page']?$_POST['page']:$_GET['page']; //默认展示5条数据 $num=$_POST['num']?$_POST['num']:5; $commit=$_GET['commit']?$_GET['commit']:$_POST['commit']; // 执行SQL语句查询数据,取别名分别为name和value,这个是echarts里面的指定数据名称 $sql='select '.$page.' name,count(id) value from ip group by name order by value desc limit '.$num; // 执行查询语句,返回对象 $rest=$pdo->query($sql); // 获取数据 $rows=$rest->fetchAll(); // 取出数组中name这一列的值,作为echarts的饼名字 $ip=json_encode(array_column($rows, 'name')); //名字 $ips=json_encode($rows) ; //名字和值 ?> <!DOCTYPE html> <html> <head> <!-- ECharts单文件引入 --> <script src="http://echarts.baidu.com/build/dist/echarts.js"></script> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <!-- 为ECharts准备一个具备大小(宽高)的Dom --> <div id="main"></div> <div class="choose"> <form class="form-horizontal" action="switch.php" method="post" role="form"> <div class="form-group"> <label for="inputEmail3" class="col-sm-2 control-label">显示项数:</label> <input type="text" class="form-control" name="num" id="inputEmail3" placeholder="默认前五"> <input type="hidden" name="page" value="<?php echo $page ?>"> <input type="hidden" name="commit" value="<?php echo $commit ?>"> <input type="submit" value="提交"> </div> <div class="form-group"> <a href="func/excel.class.php" class="btn">导出excel文件</a> </div> </form> </div> </body> <script type="text/javascript"> // 基于准备好的dom,初始化echarts图表 var myChart = ec.init(document.getElementById('main')); option = { title: { text: '<?php echo $commit ?>', subtext: '阳水平测试', x: 'center' }, tooltip: { trigger: 'item', formatter: "{a} <br/>{b} : {c} ({d}%)" }, legend: { orient: 'vertical', x: '0%', y: '10%', data: <?php echo $ip ?> }, toolbox: { show: true, feature: { dataView: { show: true, readOnly: false }, saveAsImage: { show: true } } }, calculable: true, series: [{ name: '访问来源', type: 'pie', radius: '55%', center: ['65%', '60%'], data:<?php echo $ips; ?> }] }; // 为echarts对象加载数据 myChart.setOption(option); </script> </html>
以下是connect.php文件:
<?php try{ $pdo=new PDO('mysql:host=localhost;dbname=dh_access','root','123456'); }catch(PDOException $e){ die($e->getMessage()); } // 连接数据库,设置字符集 $pdo->exec('set names utf8'); // 设置获取数据格式,之后取数据都按照索引数组取值 $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); // echo "数据库连接成功";
效果图如下,右键》在新标签中打开图片,可以查看大图:
相关文章推荐
- 通过百度echarts实现数据图表展示功能
- 后台数据结合百度echarts生成各类图表
- 通过百度echarts实现数据图表展示功能
- 开源来自百度商业前端数据可视化团队的超漂亮动态图表--ECharts
- 【推荐】开源来自百度商业前端数据可视化团队的超漂亮动态图表--ECharts
- JavaScript数据图表库推荐--百度ECharts
- 百度图表数据插件echarts的初试
- 强大的图表制作,前端数据可视化,echarts
- 百度数据图表插件Echarts
- 飞火龙在天解说百度Echarts的应用,如何从后台获取动态数据并生成图表的
- 百度echarts图表数据更新与漂浮(float)
- php中使用FusionCharts制作嵌入网页图表
- ECharts图表中级入门之formatter:夜谈关于ECharts图表内的数据格式化方法
- 百度Echarts-免费的商业产品图表库
- 用Echarts制作各种图表 自己的源代码
- PHP MySQL多个平行表联合查询,比如按照月份或者按照日期的数据表
- 开源的数据可视化JavaScript图表库:ECharts
- 百度统计图表Echarts的php实现类,支持柱形图、线形图、饼形图
- 制作多选框,并通过PHP获取多选框数据
- php网站制作(5)-类似于百度优酷等一样弹出的登陆框