FrontEnd 步步高升: Echart 使用简单介绍,快速上手~

引入echart

<script src="../js/echarts.js"></script>

当然,官方文档给了三种引入方式:点我点我~

官方说要把script标签放在body末尾,如果你想放在head也没问题。

在window.onload中注册初始化的函数:

window.onload = init;

function init() {
    initChart();
}

现在我们有一个全局变量 require

准备DOM

<!--div 有高度就可以了~ echart自适应, 当然高点好看 -->
<div id="main" class="chart-container">

</div>

图表类型:

写一个配置require的函数

function requireConfig() {
    require.config({
        paths: {
            echarts: '../js'
        }
    });

    //这段注释方便以后使用~~
    //    require(
    //            [
    //                'echarts',
    //                'echarts/chart/bar' // 使用柱状图就加载bar,参考上面图标类型
    //            ],
    //        function (ec) {
    //            // 基于准备好的dom,初始化echarts图表
    //            var myChart = ec.init(document.getElementById('bar'));             //id改成自己的
    //            var option =              // !!!!官网会有很多实例直接给出option,copy过来,改改就是自己的。
    //
    //            // 为echarts对象加载数据
    //            myChart.setOption(option);
    //        }
    //    );
}

折线图实现:

function line() {
    if (!document.getElementById('main')) return;
    requireConfig();
    // 使用
    require(
            [
                'echarts',
                'echarts/chart/line' // 使用柱状图就加载bar模块,按需加载
            ],
        function (ec) {
            // 基于准备好的dom,初始化echarts图表
            var myChart = ec.init(document.getElementById('main'));
            var option = {
                title: {
                    text: '数据统计',
                },
                tooltip: {
                    trigger: 'axis'
                },
                legend: {
                    selected: {
                        '访客数(UV)': false,
                        'IP数': false,
                        '入口页次数': false,
                        '贡献下游浏览量': false,
                        '退出页次数': false,
                        '平均停留时长': false,
                        '退出率': false
                    },
                    data: ['浏览量', '访客数(UV)', 'IP数', '入口页次数', '贡献下游浏览量', '退出页次数', '平均停留时长', '退出率']
                },
                toolbox: {
                    show: true,
                    feature: {
                        mark: {
                            show: true
                        },
                        dataView: {
                            show: true,
                            readOnly: false
                        },
                        magicType: {
                            show: true,
                            type: ['line', 'bar', 'stack', 'tiled']
                        },
                        restore: {
                            show: true
                        },
                        saveAsImage: {
                            show: true
                        }
                    }
                },
                calculable: true,
                xAxis: [
                    {
                        type: 'category',
                        boundaryGap: false,
                        data: ['2015-02-11', '2015-02-13', '2015-02-15', '2015-02-17', '2015-02-19', '2015-02-21', '2015-02-23', '2015-02-25', '2015-02-27', '2015-03-01', '2015-03-03', '2015-03-05', '2015-03-07', '2015-09', '2015-03-11', ]
        }
    ],
                yAxis: [
                    {
                        type: 'value'
        }
    ],
                series: [
                    {
                        name: '浏览量',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
                    {
                        name: '访客数(UV)',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
                    {
                        name: 'IP数',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
                    {
                        name: '入口页次数',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
                    {
                        name: '贡献下游浏览量',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
                    {
                        name: '退出页次数',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
                    {
                        name: '平均停留时长',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
                    {
                        name: '退出率',
                        type: 'line',
                        smooth: false,
                        itemStyle: {
                            normal: {
                                areaStyle: {
                                    type: 'default'
                                }
                            }
                        },
                        data: randomJSONObjN(15)
                    },
    ]
            };
            // 为echarts对象加载数据
            myChart.setOption(option);
        }
    );
}

唯一需要注意的点吧:data需要一个json对象~~

时间: 2024-10-09 13:14:38

FrontEnd 步步高升: Echart 使用简单介绍,快速上手~的相关文章

简单layer 快速上手

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>开始使用layer</title> </head> <body> <script src="jQuery的路径"></script> <!-- 你必须先引入jQuery1.8或以上版本 --> <script s

Masonry介绍与使用实践:快速上手Autolayout

以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了 在iphone4-iphone4s时代 苹果推出了retina屏 但是给了码农们非常大的福利:window的size不变 在iphone5-iphone5s时代 window的size变了(320,568) 这时autoresizingMask派上了用场(为啥这时候不用Autolayout? 因为还要支持ios5呗) 简单

Masonry介绍与使用实践(快速上手Autolayout)(转)

原文:http://adad184.com/2014/09/28/use-masonry-to-quick-solve-autolayout/?sukey=fc78a68049a14bb23f9904ceb1cee7693d4a59492bdc4ab7adac872bc75badc34b073acbbde493ba3e6a69360d89a4c4 前言 1 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期

【转】Masonry介绍与使用实践(快速上手Autolayout)

原文网址:http://adad184.com/2014/09/28/use-masonry-to-quick-solve-autolayout/ 前言 1 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了 在iphone4-iphone4s时代 苹果推出了retina屏 但是给

Masonry介绍与使用实践(快速上手Autolayout)

1 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了 在iphone4-iphone4s时代 苹果推出了retina屏 但是给了码农们非常大的福利:window的size不变 在iphone5-iphone5s时代 window的size变了(320,568) 这时autores

iOS Masonry介绍与使用实践:快速上手Autolayout

如题,今天的任务是Nasonry介绍与使用实践:快速上手Autolayout & 自己App项目的适配 & 遇到的问题及解决方法. Tips: .h与.m文件之间的切换快捷键 control + command + 上下键 Tips:如何在Xib中设置Button的属性(圆角以及背景颜色).Inspector -- User Defined Runtime Attributes -- layer.cornerRadius & Number & 10 9月14号更新--好吧,

Masonry介绍与使用实践:快速上手Autolayout【转载】

MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了 在iphone4-iphone4s时代 苹果推出了retina屏 但是给了码农们非常大的福利:window的size不变 在iphone5-iphone5s时代 window的size变了(320,568) 这时autoresiz

iOS适配:Masonry介绍与使用实践:快速上手Autolayout

随着iPhone的手机版本越来越多, 那么对于我们广大的开发者来说就是很悲催,之前一直使用代码里面layout的约束来适配, 现在推荐一个第三方Masonry,上手块,操作简单,只能一个字形容他 “爽”~~~ 进入正题: 1 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了 在i

&lt;转帖&gt;Masonry介绍与使用实践(快速上手Autolayout)

前言 1 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了 在iphone4-iphone4s时代 苹果推出了retina屏 但是给了码农们非常大的福利:window的size不变 在iphone5-iphone5s时代 window的size变了(320,568) 这时auto