ECharts的基本使用

1、ECharts

ECharts 是一个使用 JavaScript 实现的开源可视化库,涵盖各行业图表,兼容大部分浏览器,十分适合数据分析、展示。

官网地址:https://www.echartsjs.com/zh/index.html
下载地址:https://www.echartsjs.com/zh/download.html

2、快速上手

(1)、引入echarts.js文件。

echarts.min.js是压缩过的文件,适合发布时使用;echarts.js是未压缩的文件,适合开发时使用。
<script src="js/echarts.js" type="text/javascript" charset="utf-8"></script>

(2)、准备一个具备宽高的Dom容器来放置生成的图标。

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

(3)、初始化echerts实例

var myChart = echarts.init(document.getElementById('main'));

(4)、准备图表的配置项和数据(option)

              var option = {
                    title: {
                        text: 'ECharts 入门示例'                //标题
                    },
                    tooltip: {},                            //提示框组件
                    legend: {                               //图例组件
                        data:['销量']
                    },
                    xAxis: {                                //x轴
                        data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
                    },
                    yAxis: {},                              //y轴
                                            
                    series: [{                              //系列列表。每个系列通过 type 决定自己的图表类型
                        name: '销量',                     
                        type: 'bar',                        //柱状图
                        data: [5, 20, 36, 10, 10, 20]       //数据
                    }]
                };

(5)、通过准备好的配置项和数据显示图表。

myChart.setOption(option);

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script src="js/echarts.js" type="text/javascript" charset="utf-8"></script>
    </head>
    <body>
        <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
        
            <div id="main" style="width: 600px;height:400px;"></div>
            <script type="text/javascript">
                // 基于准备好的dom,初始化echarts实例
                var myChart = echarts.init(document.getElementById('main'));
        
                // 指定图表的配置项和数据
                var option = {
                    title: {
                        text: 'ECharts 入门示例'                //标题
                    },
                    tooltip: {},                            //提示框组件
                    legend: {                               //图例组件
                        data:['销量']
                    },
                    xAxis: {                                //x轴
                        data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
                    },
                    yAxis: {},                              //y轴
                                            
                    series: [{                              //系列列表。每个系列通过 type 决定自己的图表类型
                        name: '销量',                     
                        type: 'bar',                        //柱状图
                        data: [5, 20, 36, 10, 10, 20]       //数据
                    }]
                };
        
                // 使用刚指定的配置项和数据显示图表。
                myChart.setOption(option);
            </script>
    </body>
</html>

image.png

3、常用的组件和配置项

官网术语速查手册https://www.echartsjs.com/zh/cheat-sheet.html

如果平时使用ECharts的频率不高的话,大致了解一下都有什么功能、组件即可,用的时候在官网找个案例,复制一下改改就可以了,使用起来十分方便,也很美观。


图标类型.png

组件.png

栗子:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <script src="js/echarts.js" type="text/javascript" charset="utf-8"></script>
    </head>
    <body>
        <!-- 为ECharts准备一个具备大小(宽高)的Dom -->

        <div id="main" style="width: 600px;height:400px;"></div>
        <script type="text/javascript">
            // 基于准备好的dom,初始化echarts实例
            var myChart = echarts.init(document.getElementById('main'));

            // 指定图表的配置项和数据
            option = {
                backgroundColor: '#b3ffd2',     //背景色

                title: {
                    text: 'Customized Pie',
                    left: 'center',             //水平居中
                    top: 20,                    //据顶端20px
                    textStyle: {
                        color: '#7e7e7e'        //标题颜色
                    }
                },
                //提示框组件
                tooltip: {
                    trigger: 'item',            //触发类型:数据项图形触发,主要在散点图,饼图等无类目轴的图表中使用。
                    formatter: '{a} <br/>{b} : {c} ({d}%)'   //提示框浮层内容格式器,支持字符串模板和回调函数两种形式。
                },
                //视觉映射组件
                visualMap: {
                    show: false ,     //
                    min: 80,
                    max: 600,
                    inRange: {
                        colorLightness: [0.5, 1],  //图元亮度
                        color:'#ff4043'   //图元颜色
                    }
                },
                series: [{
                    name: '访问来源',
                    type: 'pie',                //饼图
                    radius: '55%',
                    center: ['50%', '50%'],
                    data: [{                      //数据,可以通过Ajax直接传过来,有需要也可以写死
                            value: 335,
                            name: '直接访问'
                        },
                        {
                            value: 310,
                            name: '邮件营销'
                        },
                        {
                            value: 274,
                            name: '联盟广告'
                        },
                        {
                            value: 235,
                            name: '视频广告'
                        },
                        {
                            value: 400,
                            name: '搜索引擎'
                        }
                    ].sort(function(a, b) {     //对数组里的数据进行升序排序(饼图中顺时针)
                        return a.value - b.value;
                    }),
                    roseType: 'radius',
                    label: {
                        color: 'rgba(25, 10, 25, 76)'   //标签颜色
                    },
                    labelLine: {                        //辅助线
                        lineStyle: {
                            color: 'rgba(65, 65, 65, 76)'
                        },
                        smooth: 0.2,
                        length: 10,
                        length2: 20
                    },
                    itemStyle: {
                        color: '#c23531',
                        shadowBlur: 200,
                        shadowColor: 'rgba(0, 0, 0, 0.5)'   //阴影颜色
                    },
                    //出现时动画效果
                    animationType: 'scale',
                    animationEasing: 'elasticOut',
                    animationDelay: function(idx) {
                        return Math.random() * 200;
                    }
                }]
            };

            // 使用刚指定的配置项和数据显示图表。
            myChart.setOption(option);
        </script>
    </body>
</html>
image.png
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,588评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,456评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,146评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,387评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,481评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,510评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,522评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,296评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,745评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,039评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,202评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,901评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,538评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,165评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,415评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,081评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,085评论 2 352

推荐阅读更多精彩内容