JS 流行库(九):ECharts

JS 流行库(九):ECharts

ECharts 是一个使用 JavaScript 实现的数据可视化库,提供了常见的折线图、柱状图、饼图等,可以流畅的运行在 PC 和移动端上,在 ECharts 4.0 之前底层使用 canvas 标签实现图表绘制,而在 ECharts 4.0 之后为了提升移动端性能,已经实现 SVG 渲染

数据可视化是指将数据以图表的形式展现

基本使用

  1. 导入 ECharts 库
<script src="./echarts.js"></script>
  1. HTML 结构
<div style="width: 600px; height: 400px"></div>

此处为 ECharts 创建容器

  1. JavaScript 代码
window.onload = function () {
    /* DOM 元素 */
    let oDiv = document.querySelector("div");

    /* 初始化 ECharts */
    let myCharts = echarts.init(oDiv);

    /* 配置选项 */
    let option = {
        title: {
            text: 'ECharts 入门示例'
        },
        legend: {
            data: ['销量']
        },
        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20]
        }]
    }

    /* 设置选项 */
    myCharts.setOption(option);
}

ECharts 的关键在于配置选项,选项决定了 ECharts 如何渲染图表,上述示例中的选项说明如下:

选项说明
title标题
legend图例
xAxisX 轴内容
yAxisY 轴内容
series项目(名称、图表类型、数据)

示例如下:

window.onload = function () {
    /* DOM 元素 */
    let oDiv = document.querySelector("div");

    /* 初始化 ECharts */
    let myCharts = echarts.init(oDiv);

    /* 配置选项 */
    let option = {
        title: {
            text: 'ECharts 入门示例'
        },
        legend: {
            data: ['销量', '产量']
        },
        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20]
        }, {
            name: '产量',
            type: 'line',
            data: [10, 30, 40, 15, 15, 25]
        }]
    }

    /* 设置选项 */
    myCharts.setOption(option);
}

在配置项目时,项目名称必须和图例名称相应

常用组件

此处不可能介绍所有组件,在必要时可以查阅文档,官网如下:

标题

在 title 选项中,可以配置如下内容:

选项说明
show显示
text标题
subtext子标题
left/top/right/bottom位置
borderColor边框颜色
borderWidth边框宽度

示例如下:

window.onload = function () {
    /* DOM 元素 */
    let oDiv = document.querySelector("div");

    /* 初始化 ECharts */
    let myCharts = echarts.init(oDiv);

    /* 配置选项 */
    let option = {
        title: {
            text: 'ECharts 入门示例',
            subtext: 'My Echarts Example'
        },
        legend: {
            data: ['销量']
        },
        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20]
        }]
    }

    /* 设置选项 */
    myCharts.setOption(option);
}

工具箱

在 toolbox 选项中,可选配置如下:

选项说明
show显示
feature功能
saveAsImage功能/保存图片
dataView功能/数据视图
restore功能/恢复数据
dataZoom功能/缩放视图
magicType功能/动态类型切换

示例如下:

window.onload = function () {
    /* DOM 元素 */
    let oDiv = document.querySelector("div");

    /* 初始化 ECharts */
    let myCharts = echarts.init(oDiv);

    /* 配置选项 */
    let option = {
        title: {
            text: 'ECharts 入门示例',
            subtext: 'My Echarts Example'
        },
        legend: {
            data: ['销量']
        },
        toolbox: {
            show: true,
            feature: {
                saveAsImage: {
                    show: true
                },
                dataView: {
                    show: true
                },
                restore: {
                    show: true
                },
                dataZoom: {
                    show: true
                },
                magicType: {
                    type: ['bar', 'line']
                }
            }
        },
        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20]
        }],
    }

    /* 设置选项 */
    myCharts.setOption(option);
}

弹窗

在 tooltip 选项中,可选配置如下:

选项说明
show显示
trigger显示方式(axis)

示例如下:

window.onload = function () {
    /* DOM 元素 */
    let oDiv = document.querySelector("div");

    /* 初始化 ECharts */
    let myCharts = echarts.init(oDiv);

    /* 配置选项 */
    let option = {
        title: {
            text: 'ECharts 入门示例',
            subtext: 'My Echarts Example'
        },
        legend: {
            data: ['销量']
        },

        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20]
        }],
        tooltip: {
            show: true,
            trigger: "axis"
        }
    }

    /* 设置选项 */
    myCharts.setOption(option);
}

标记

在 ECharts 中可以使用 markLine 和 markPoint 选项标记图表中的最大值、最小值和平均值:

示例如下:

window.onload = function () {
    /* DOM 元素 */
    let oDiv = document.querySelector("div");

    /* 初始化 ECharts */
    let myCharts = echarts.init(oDiv);

    /* 配置选项 */
    let option = {
        title: {
            text: 'ECharts 入门示例',
            subtext: 'My Echarts Example'
        },
        legend: {
            data: ['销量']
        },
        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20],
            markPoint: {
                data: [
                    { type: "max", name: "最大值" },
                    { type: "min", name: "最小值" }
                ]
            },
            markLine: {
                data: [
                    { type: "max", name: "最大值" },
                    { type: "min", name: "最小值" },
                    { type: "average", name: "平均值" }
                ]
            }
        }]
    }

    /* 设置选项 */
    myCharts.setOption(option);
}

饼状图

示例如下:

window.onload = function () {
    /* DOM 元素 */
    let oDiv = document.querySelector("div");

    /* 初始化 ECharts */
    let myCharts = echarts.init(oDiv);

    /* 配置选项 */
    let option = {
        title: {
            text: 'ECharts 入门示例',
            subtext: 'My Echarts Example'
        },
        legend: {
            data: ['销量', '产量']
        },
        series: [{
            type: 'pie',
            data: [
                { value: 921, name: "销量" },
                { value: 1024, name: "产量" }
            ]
        }]
    }

    /* 设置选项 */
    myCharts.setOption(option);
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值