echarts入门,5分钟上手写ECharts的第一个图表

简介:

1.新建一个echarts.html文件,为ECharts准备一个具备大小(宽高)的Dom。

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
</head>

<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="height:400px"></div>
</body>

2.新建script标签引入模块化单文件echarts.js

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
</head>
<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="height:400px"></div>
    <!-- ECharts单文件引入 -->
    <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
</body>

3.新建script标签中为模块加载器配置echarts和所需图表的路径

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
</head>
<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="height:400px"></div>
    <!-- ECharts单文件引入 -->
    <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
    <script type="text/javascript">
        // 路径配置
        require.config({
            paths: {
                echarts: 'http://echarts.baidu.com/build/dist'
            }
        });
    </script>
</body>

4.script标签内动态加载echarts和所需图表,回调函数中可以初始化图表并驱动图表的生成

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
</head>
<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="height:400px"></div>
    <!-- ECharts单文件引入 -->
    <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
    <script type="text/javascript">
        // 路径配置
        require.config({
            paths: {
                echarts: 'http://echarts.baidu.com/build/dist'
            }
        });
        
        // 使用
        require(
            [
                'echarts',
                'echarts/chart/bar' // 使用柱状图就加载bar模块,按需加载
            ],
            function (ec) {
                // 基于准备好的dom,初始化echarts图表
                var myChart = ec.init(document.getElementById('main')); 
                
                var option = {
                    tooltip: {
                        show: true
                    },
                    legend: {
                        data:['销量']
                    },
                    xAxis : [
                        {
                            type : 'category',
                            data : ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
                        }
                    ],
                    yAxis : [
                        {
                            type : 'value'
                        }
                    ],
                    series : [
                        {
                            "name":"销量",
                            "type":"bar",
                            "data":[5, 20, 40, 10, 10, 20]
                        }
                    ]
                };
        
                // 为echarts对象加载数据 
                myChart.setOption(option); 
            }
        );
    </script>
</body>

5.查看效果

参考上述内容+官方相关案例,调整修改,应用到自己的项目中

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>支付方式统计</title>
    <style>
        #main {
            margin: 30px;
        }
    </style>
</head>

<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="height:500px"></div>
    <!-- ECharts单文件引入 -->
    <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
    <script type="text/javascript">
        // 路径配置
        require.config({
            paths: {
                echarts: 'http://echarts.baidu.com/build/dist'
            }
        });
        
        // 使用
        require(
            [
                'echarts',
                'echarts/chart/pie' // 使用柱状图就加载bar模块,按需加载
            ],
            function (ec) {
                // 基于准备好的dom,初始化echarts图表
                var myChart = ec.init(document.getElementById('main')); 
                
                option = {
                    tooltip: {
                        trigger: 'item',
                        formatter: "{a} <br/>{b}: {c} ({d}%)"
                    },
                    legend: {
                        orient: 'vertical',
                        x: 'left',
                        data:['微信','支付宝','积分','其他']
                    },
                    series: [
                        {
                            name:'支付方式',
                            type:'pie',
                            radius: ['50%', '70%'],
                            avoidLabelOverlap: false,
                            label: {
                                normal: {
                                    show: false,
                                    position: 'center'
                                },
                                emphasis: {
                                    show: true,
                                    textStyle: {
                                        fontSize: '30',
                                        fontWeight: 'bold'
                                    }
                                }
                            },
                            labelLine: {
                                normal: {
                                    show: false
                                }
                            },
                            data:[
                                {value:'{sh:$payment.weixin}', name:'微信'},
                                {value:'{sh:$payment.alipay}', name:'支付宝'},
                                {value:'{sh:$payment.integral}', name:'积分'},
                                {value:'{sh:$payment.other}', name:'其他'}
                            ]
                        }
                    ]
                };
        
                // 为echarts对象加载数据 
                myChart.setOption(option); 
            }
        );
    </script>
</body>

获取相关数据

<?php
/**
 * 支付方式管理
 */
class PaymentAction extends AgentAction{
    protected function _initialize() {
        parent::_initialize();
    }
    
    // 付款方式统计
    public function index(){
        // 统计订单的支付方式
        $orderModel = D('Order');
        $payment['weixin'] = $orderModel->getPaytypeOrderNum('weixin');
        $payment['alipay'] = $orderModel->getPaytypeOrderNum('alipay');
        $payment['integral'] = $orderModel->getPaytypeOrderNum('integral');
        $payment['other'] = $orderModel->getPaytypeOrderNum();

        $this->assign('payment',$payment);
        $this->display();
    }
}
?>



本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5736135.html,如需转载请自行联系原作者

相关文章
|
数据可视化
数据可视化图表开发:查看Echarts.js版本方法
数据可视化图表开发:查看Echarts.js版本方法
369 0
|
JavaScript 数据可视化
Vue引入Echarts词云图实现数据可视化(实现源码+案例)
本文主要讲Vue如何引入Echarts词云图实现数据可视化
1658 0
Vue引入Echarts词云图实现数据可视化(实现源码+案例)
|
3月前
|
Web App开发 数据可视化 前端开发
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
本文介绍了ECharts的基本使用和语法格式,包括如何引入ECharts、创建容器、初始化echarts实例对象、配置option参数和一些基础图表的绘制方法。文章还提供了简单图表绘制和使用图例添加的示例代码,以及对ECharts特性和优势的概述。
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
|
6月前
|
JavaScript Apache 容器
如何使用ECharts制作一个简单的柱状图
如何使用ECharts制作一个简单的柱状图
83 0
【ECharts学习】—实现我的第一个图表
【ECharts学习】—实现我的第一个图表
|
JSON 小程序 前端开发
小程序Echarts图表组件使用
小程序Echarts图表组件使用
80 0
Echarts实战案例代码(52):双轴折线图的配置
Echarts实战案例代码(52):双轴折线图的配置
163 0
|
存储 JSON 数据可视化
Echarts实战案例代码(12):Highcharts与Echarts地图geoJSON的比较及使用方法
Echarts实战案例代码(12):Highcharts与Echarts地图geoJSON的比较及使用方法
221 0
Echarts实战案例代码(33):饼状图半圆实现方法
Echarts实战案例代码(33):饼状图半圆实现方法
173 0
|
JavaScript
vue中echarts实现双图联动展示数据,折线图+饼图(附带源码)
最近写项目,有一块功能需要使用双图进行联动的展示,左边折线图,鼠标移动折线图焦点,能把每个点的数据情况展示到饼图上,这里记录一下,希望对大家有帮助
805 0
vue中echarts实现双图联动展示数据,折线图+饼图(附带源码)
下一篇
DataWorks