1、前言

最近做的大数据平台,里面很多地方用到了ECharts,其中有个功能,要求将图表分组,根据用户选择的组,来确定ECharts要显示那些线条和柱子,也就是动态的显示option.series。

2、思路

找了一下EChart的文档,发现可以通过控制option.legend.selected,来动态设置,无论饼图、折线图、还是柱状图,都可以通过这个来控制显示哪些。

3、实现

EChart的legend.selected属性是一个对象,可以把series的每一个系列的name作为键名,值为Boolean,来控制是否显示。通过实例化后的EChart对象来setOption,就可以实现动态更改显示,只需要把数据变化set到ECharts实例上就可以了。

option = {
tooltip: {
trigger: 'axis'
},
legend: {
selected: {
AAA: false
}
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [
{
name: 'AAA',
type: 'line',
data: [120, 132, 101, 134, 90, 230, 210]
},
{
name: 'BBB',
type: 'line',
data: [220, 182, 191, 234, 290, 330, 310]
},
{
name: 'CCC',
type: 'line',
data: [150, 232, 201, 154, 190, 330, 410]
},
{
name: 'DDD',
type: 'line',
data: [320, 332, 301, 334, 390, 330, 320]
}
]
};
option = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
legend: {
selected: {
AAA: false
}
},
tooltip: {
trigger: 'item'
},
yAxis: {
type: 'value'
},
series: [
{
name: 'AAA',
type: 'bar',
data: [10,20,30,40,50,60,70],
},
{
name: 'BBB',
type: 'bar',
data: [20,30,40,50,60,70,80],
},
{
name: 'CCC',
type: 'bar',
data: [30,40,50,60,70,80,90],
},
{
name: 'DDD',
type: 'bar',
data: [40,50,60,70,80,90,100],
},
{
name: 'EEE',
type: 'bar',
data: [50,60,70,80,90,100,110],
}
]
};
option = {
tooltip: {
trigger: 'item'
},
legend: {
selected: {
AAA: false
}
},
series: [
{
name: 'Pie',
type: 'pie',
radius: '50%',
data: [
{ value: 1048, name: 'AAA' },
{ value: 735, name: 'BBB' },
{ value: 580, name: 'CCC' },
{ value: 484, name: 'DDD' },
{ value: 300, name: 'EEE' }
]
}
]
};

打开体验地址,将数据粘贴上去,就可以查看效果。


本次分享就到这儿啦,我是鹏多多,如果您看了觉得有帮助,欢迎评论,关注,点赞,转发,我们下次见~


PS:在本页按F12,在console中输入document.querySelectorAll('.diggit')[0].click(),有惊喜哦


公众号

往期文章

个人主页

ECharts图表动态修改series显示隐藏的更多相关文章

  1. 关于ECharts图表反复修改都无法显示的解决方案

    解决方案:清空浏览器所有记录,再次刷新即可

  2. .NET+Ajax+ashx 实现Echarts图表动态交互

    前言: 使用Echarts展示图表效果,在这里只做了四种案例:折线.柱状.圆形.雷达.当初是一位朋友用到Echarts展示数据,他没有太多时间弄,所以我就帮他搞出来,当初刚接触的时候也是一头雾水,不知 ...

  3. 关于Highcharts图表组件动态修改属性的方法(API)总结之Series

    Highcharts图表组件内的Series很重要,如果说Categries是其大脑,那么Series就是其心脏.这两者才是Highcharts图表组件的重中之重啊.接下来就为大家介绍关于设置Seri ...

  4. 使用Echarts实现动态曲线图表

    最近做的一个在线气象观测网站要实现一个需求:使用图表展示最近五天温湿度等气象要素的曲线变化 具体效果参考:http://www.weatherobserve.com/showInfoIndex.jsp ...

  5. ECharts图表插件(4.x版本)使用(一、关系图force节点显示为自定义图像/图片,带分类选择)

    导读 ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safar ...

  6. echarts系列之动态修改柱状图颜色

    echarts根据某一变量动态修改柱状图颜色 1.option中参数配置项series { "name":"Android", "type" ...

  7. 使用 iview Table 表格组件修改操作的显示隐藏

    使用 iview Table 表格组件修改操作的显示隐藏,如下图 1.如何设置 table 操作按后台传入的状态值去渲染 不同的按钮? 解决方法 我们在vue2中,动态渲染html 使用的是 retu ...

  8. Vuforia图像追踪,动态创建的对象隐藏显示的坑

    刚做的一个项目,使用Unity3D的Vuforia插件进行图像识别,其中有动态生成的游戏对象模型,地形模型放在ImageTarget下,作为ImageTarget的子物体. 动态生成的敌人则有Pref ...

  9. ECharts图表tooltip显示时超出canvas图层解决方法

    我们在做ECharts图表的时候可能会遇到tooltip显示时超出了canvas图层范围,并且被其它z-index较高的div容器遮盖,这是悬浮展示信息就看不全,我们根据官网文档的配置项查询发现con ...

  10. mui在tab选项卡中echarts图表不能动态随页面变化大小 只能固定大小

    在mui tab选项卡中一直都不能让echarts动态变化大小 只能固定大小来展示图表,网上说的window.onresize = mycharts.resize;方法根本就没有效果,后面在https ...

随机推荐

  1. sql server 系统表详细说明

    sql server 系统表详细说明 sysaltfiles 主数据库 保存数据库的文件syscharsets 主数据库字符集与排序顺序sysconfigures 主数据库 配置选项 syscurco ...

  2. Python潮流周刊#2:Rust 让 Python 再次伟大

    这里记录每周值得分享的 Python 及通用技术内容,部分为英文,已在小标题注明.(本期标题取自其中一则分享,不代表全部内容都是该主题,特此声明.) 文章&教程 1.Python修饰器的函数式 ...

  3. L2-035 完全二叉树的层序遍历

    题目描述: 一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树.对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就 ...

  4. Android Studio格式化代码

    有时候代码写来老师乱七八糟,手动格式化讷太浪费时间,且格式化不公正,最后当然使用ide自带的快捷键了 找到导航中的Code 下的 Reformat Code ; 看提示知道使用快捷键 就是Ctrl + ...

  5. RabbitMQ 工作模式介绍

    RabbitMQ 工作模式介绍 1.Hello World RabbitMQ 是一个消息代理:它接受并转发消息.您可以将其视为邮局:当您将要邮寄的邮件放入邮箱时,您可以确定信使最终会将邮件交付给您的收 ...

  6. 基于渗透的python

    Python for Pentesters 还记得开始学习编程的C,虽然淡忘,但思想仍在. 子域名枚举 request库 import pyfiglet import requests import ...

  7. C++面试八股文:了解sizeof操作符吗?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第10面: 面试官:了解sizeof操作符吗? 二师兄:略微了解(不就是求大小的嘛..) 面试官:请讲以下如何使用sizeof? 二师兄:sizeof ...

  8. CKS 考试题整理 (10)-Dockerfile检测

    Task 分析和编辑给定的Dockerfile /cks/docker/Dockerfile(基于ubuntu:16.04 镜像), 并修复在文件中拥有的突出的安全/最佳实践问题的两个指令. 分析和编 ...

  9. 3. AOP

    1. 代理模式 1.1 概念 ① 介绍 二十三种设计模式中的一种,属于结构型模式.它的作用就是通过提供一个代理类,让我们在调用目标方法的时候,不再是直接对目标方法进行调用,而是通过代理类间接调用.让不 ...

  10. Reactor 模式与Tomcat中的Reactor

    系列文章目录和关于我 参考:[nio.pdf (oswego.edu)](https://gee.cs.oswego.edu/dl/cpjslides/nio.pdf) 一丶什么是Reactor Th ...