Echarts的使用以及动态加载数据

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Echarts的使用以及动态加载数据

一、Echarts的介绍


ECharts开源来自百度商业前端数据可视化团队,基于html5 Canvas,是一个纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。—— 大数据时代,重新定义数据图表的时候到了(ps:来自网络)

自己最近使用echarts对中国石化客户关系进行可视化分析,结合官网学习了ECharts 中实现异步数据,然后自己作为小白在这里总结下使用方法。

官方文档:Echart3官方文档.Echart2官方文档.


二、Echarts的使用


1、官方下载


21.png

Echarts3.0的完整版下载


2、页面引入Echart.js和JQuery(异步加载使用)


<script src="../js/jquery-3.1.1.min.js"></script>
<script src="../js/echarts.min.js"></script>


并准备一个div容器


<style>#main{width: 600px;height: 400px;}</style>
<div id="main"></div>


3、echart实例初始化设置,然后异步请求数据,画一张柱状图


关于几个配置项的解释:

title:图片的名称

legend:图例组件,可以通过点击图例控制哪些系列不显示

xAxis:直角坐标系 grid 中的 x 轴

yAxis:直角坐标系 grid 中的 y 轴

series:系列列表。每个系列通过 type 决定自己的图表类型,这里是柱状图‘bar’


<script>
        myChart=echarts.init(document.getElementById('main'));//获取容器
        //先设置完其它的样式,显示一个空的直角坐标轴,然后获取数据后填入数据
        myChart.setOption({
            title: {
                text: '异步数据加载示例'
            },
            tooltip: {},
            legend: {
                data:['销量']
            },
            xAxis: {
                data: []
            },
            yAxis: {},
            series: [{
                name: '销量',
                type: 'bar',
                data: []
            }]
        });
        // 异步加载json格式数据
        $.getJSON('http://localhost:63342/echart/loaddata/client.php',function(data){
            myChart.setOption({
                xAxis: {
                    data: data.categories
                },
                series: [{
                    // 根据名字对应到相应的系列
                    name: '销量',
                    data: data.data
                }]
            });
        });
    </script>
</body>
</html>


4、通过PHP进行后台数据处理:client.php


<?php
#连接数据库
$conn=mysqli_connect('localhost','root','root','demo');
if($conn->connect_errno){
    die('连接失败'.$conn->connect_errno);
}
#设置字符集
$conn->set_charset('utf8');
#查询数据
$sql='select * from clothes';
$result=mysqli_query($conn,$sql);
#将数据转化成json格式
$json_data=array('categories'=>array(),'data'=>array());
while ($row=mysqli_fetch_array($result,MYSQLI_ASSOC)){
    array_push($json_data['data'],intval($row['data']));//将字符串转化为数值
    array_push($json_data['categories'],$row['categories']);
}
echo json_encode($json_data);//打印编码后的json字符串*/
?>


其中段代码,主要是将数据库的对应字段的每一列提取出来,然后放在关联数组里


while ($row=mysqli_fetch_array($result,MYSQLI_ASSOC)){
    array_push($json_data['data'],intval($row['data']));//将字符串转化为数值
    array_push($json_data['categories'],$row['categories']);
}


最后这是我们想要的json数据格式


22.png

想要的数据格式


5、数据库设计


注意:这里“data”是整形,要使用intval()方法转化下


23.png

数据库数据


6、最终效果


24.png

效果

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
前端开发 算法 数据可视化
怎么在echarts图上左右滑动切换数据区间
怎么在echarts图上左右滑动切换数据区间
56 0
|
2月前
|
数据可视化
echarts图表坐标轴数据标签添加下划线
echarts图表坐标轴数据标签添加下划线
50 0
|
2月前
|
前端开发 JavaScript BI
Django教程第5章 | Web开发实战-数据统计图表(echarts、highchart)
使用echarts和highcharts图表库实现折线图、柱状图、饼图和数据集图
64 2
|
3月前
|
数据可视化 前端开发 JavaScript
react+datav+echarts实现可视化数据大屏
最近有点闲,就学习了下react,没想到就把react学完了,觉得还不错,就打算出一把react+datav的简易版可视化数据大屏供大家做个参考
153 2
react+datav+echarts实现可视化数据大屏
|
4月前
Echarts 设置数据条颜色 宽度
Echarts 设置数据条颜色 宽度
|
5月前
Echarts饼图之-玫瑰图数据交互
Echarts饼图之-玫瑰图数据交互
37 0
|
5月前
|
JSON 数据格式
ECharts折线图渲染json格式数据(格式为对象)
ECharts折线图渲染json格式数据(格式为对象)
48 0
|
5月前
|
JSON 数据格式
ECharts折线图渲染json格式数据(格式为数组)
ECharts折线图渲染json格式数据(格式为数组)
42 0
|
5月前
|
JSON 数据格式
Echarts饼状图交互数据
Echarts饼状图交互数据
33 0