发布于2022年11月4日3年前 采用Ajax,通过php,从mysql取出数据,然后将数据使用ECharts展示。如果想要动态刷新图标,那么设置一个定时器,定时取数,就可以达到目的。数据库数据库名:kali表名:ecahrts字段有:id city sun av qs详细结构如下:Idcitysunavqs 1我15006781342 2非18004651245 3常2000346665 4的12004561432 5帅1750785412 配置php文件<?php $mysqli=new mysqli('127.0.0.1','root','123456','kali'); mysqli_query($mysqli,"set names 'utf8'"); $sql="SELECT * FROM ecahrts"; $result = $mysqli->query($sql,MYSQLI_USE_RESULT); if($result){ $i=0; $categories=array(); $datas=array(); while($row = $result->fetch_assoc()) { $categories[$i]=$row['city']; $datas[$i]=$row['sun']; $datas1[$i]=$row['av']; $datas2[$i]=$row['qs']; $i=$i+1; } $arr=array('categories'=>$categories,'data'=>$datas,'data1'=>$datas1,'data2'=>$datas2); echo json_encode($arr); } $mysqli->close(); ?>主要参数说明:读取数据库中的数据,并且复制给数组$arr验证将上面php保存为api.php,访问127.0.0.1/api.php这里需要注意的是,在数据库中我的字段city是中文。Ajax读取数据后是乱码,于是我采用mysqli_query($mysqli,"set names 'utf8'");将其通过php编码即可。绘制图表引用各种js <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts-gl/dist/echarts-gl.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts-stat/dist/ecStat.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts/dist/extension/dataTool.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts/map/js/china.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts/map/js/world.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts/dist/extension/bmap.min.js"></script> <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>核心代码解读function addData(){ $.get('aip.php').done(function(data,status) 从api.php中获取数据 var data=eval('('+data+')'); //转换为json完整html代码index.html使用将index.html和api.php放到你的根目录,修改数据库信息和字段信息。访问你的主机ip即可。 版权属于:逍遥子大表哥本文链接:https://blog.bbskali.cn/2001.html按照知识共享署名-非商业性使用 4.0 国际协议进行许可,转载引用文章应遵循相同协议。
创建帐户或登录后发表意见