Echarts自定义折线图例,增加选中功能

用Echarts图表开发,原本的Echarts图例不一定能满足我们的视觉要求。

下面是Echarts 折线图自定义图例,图例checked选中,相应的折线线条会随之checked,其余未选中的图例对应的折线opacity会降低,(柱状图,饼图等等也类似于此),这是一个小例子(如果满足不了您的视觉要求,您可以自己定义css样式,达到自己想要的视觉效果):

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Echarts 自定义折线图例</title>
<script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript" src="https://cdn.bootcss.com/echarts/3.7.1/echarts.min.js"></script>
<style>ul,li{ list-style:none;}.charts-left-list {list-style: none;overflow: hidden;float: left;width: 100%;padding: 0;}.charts-left-list li {float: left;width: 100%;color: #4A4A4A;font-size: 13px;line-height: 30px;border-bottom: 1px solid #EEEEEE;}.pull-left {float: left !important;}span.pull-right {padding: 0 6px;float: right !important;}li.state-selected {background-color: rgba(240, 225, 28, 0.3);}span.item-color{float:left;width:10px;height:10px;border-radius:50%;margin-top: 9px;margin-right: 6px;}.tooltip-all{max-width:180px;padding:10px 16px;}.custom-tooltip{float: left;width:100%;}.tooltip-date{float: left;width:100%;padding-bottom: 10px;border-bottom: 1px solid #EEEEEE;}.tooltip-detail{float: left;padding:10px 0;}.item-name{float:left;}.item-num{float:right;}</style>
</head><body><div class="charts-left-list" style="width:30%; float:left"><ul><li><span class="pull-left"><span class="num">1</span><span class="list-color"></span><span class="list-name">安凱客車</span></span><span class="pull-right">8.50</span></li><li><span class="pull-left"><span class="num">2</span><span class="list-color"></span><span class="list-name">奧馳</span></span><span class="pull-right">8.20</span></li><li><span class="pull-left"><span class="num">3</span><span class="list-color"></span><span class="list-name">奧迪</span></span><span class="pull-right">8.02</span></li><li><span class="pull-left"><span class="num">4</span><span class="list-color"></span><span class="list-name">阿斯頓馬丁</span></span><span class="pull-right">7.87</span></li><li><span class="pull-left"><span class="num">5</span><span class="list-color"></span><span class="list-name">寶駿</span></span><span class="pull-right">7.50</span></li><li><span class="pull-left"><span class="num">6</span><span class="list-color"></span><span class="list-name">寶馬</span></span><span class="pull-right">6.12</span></li><li><span class="pull-left"><span class="num">7</span><span class="list-color"></span><span class="list-name">保時捷</span></span><span class="pull-right">5.78</span></li><li><span class="pull-left"><span class="num">8</span><span class="list-color"></span><span class="list-name">寶沃</span></span><span class="pull-right">5.11</span></li><li><span class="pull-left"><span class="num">9</span><span class="list-color"></span><span class="list-name">北奔</span></span><span class="pull-right">4.67</span></li><li><span class="pull-left"><span class="num">10</span><span class="list-color"></span><span class="list-name">奔馳</span></span><span class="pull-right">4.18</span></li></ul>
</div><div id="chartmain" style="width:70%; height: 400px; float:right;"></div><script>//EChartsvar colors = ['#F8E71C', '#7ED321', '#009688', '#FF9800', '#E91E63', '#50E3C2', '#CDDC39', '#03A9F4', '#9C27B0', '#2813FA'];option = {color: colors,title : {subtext: '营销指数'},animation: false,tooltip : {trigger: 'axis',formatter: function(params) {//console.log(params);var result = '';result += '<div class="tooltip-all"><span class="tooltip-date">'+params[0].name+'</span><div class="tooltip-detail">';params.forEach(function (item) {result += '<div class="custom-tooltip"><span class="item-color" style="background-color:' + item.color + '"></span><span class="item-name">'+item.seriesName+'</span><span class="item-num">'+item.value+'</span></div>';});result += '</div></div>';return result;}},legend : {show: false,data: ['安凱客車','奧馳', '奧迪','阿斯頓馬丁', '寶駿','寶馬', '保時捷','寶沃', '北奔','奔馳']},grid : {top : 40,bottom: 70,right: 80,left: 34,},dataZoom : {show : true,realtime : true,showDetail: true,y: 380,height: 20,backgroundColor: 'rgba(255,255,255,0.5)',dataBackgroundColor: '#EEEEEE',fillerColor: 'rgba(252,249,215,0.5)',handleColor: 'rgba(240,225,28,0.8)',handleSize: '22',start : 25,end : 70},calculable : true,xAxis : [{type : 'category',boundaryGap : false,data : ['2016/9/08','2016/10/08','2016/11/08','2016/12/08','2017/01/08','2017/02/08','2017/03/08','2017/04/08','2017/05/08','2017/06/08','2017/07/08','2017/08/08','2017/09/08','2017/10/08','2017/11/08','2017/12/08'],axisLine:{lineStyle:{color: '#EEEEEE',width: 1,}},axisLabel : {textStyle: {color: '#C8C6C6',fontSize: 10}}}],yAxis : [{type : 'value',axisLabel : {formatter: '{value}',textStyle: {color: '#C8C6C6',fontSize: 13}},axisLine:{lineStyle:{color: '#EEEEEE',width: 1,}},splitLine: {  lineStyle: {color: ['#EEEEEE']  }  }}],series : [{name:'安凱客車',smooth: true,type:'line',symbol:'none',data:[6.3, 7.5, 7.9, 8.2, 8.4, 8.8, 9,6.3,7.5, 7.9, 8.5, 8, 7.6, 7, 6,9],lineStyle:{normal:{opacity: 1}}},{name:'奧馳',smooth: true,type:'line',symbol:'none',data:[5.5, 6.5, 6.2, 7, 7.5, 8, 8.3,6,7, 5.5, 8.2, 6, 7, 6, 4,6],lineStyle:{normal:{opacity: 1}}},{name:'奧迪',smooth: true,type:'line',symbol:'none',data:[5.7, 6.2, 5, 4.3, 3, 5.2, 4,7,6.1, 5.3, 4, 6.2, 4.5, 6.8, 5.4,8.6],lineStyle:{normal:{opacity: 1}}},{name:'阿斯頓馬丁',smooth: true,type:'line',symbol:'none',data:[4.8, 6, 5.6, 5.2, 4.8, 5.4, 3.9,5.7,3.6, 2.8, 4.2, 3.6, 2.9, 4.3, 3.4,5.8],lineStyle:{normal:{opacity: 1}}},{name:'寶駿',smooth: true,type:'line',symbol:'none',data:[4.2, 5.4, 5.2, 4.6, 4, 5, 3.5,5.2,3.1, 4, 6, 3.1, 4, 2.5, 3,5],lineStyle:{normal:{opacity: 1}}},{name:'寶馬',smooth: true,type:'line',symbol:'none',data:[3.8, 4.6, 4.9, 4, 5, 3, 4.5,3,3.8, 4.6, 2.5, 2.4, 3.6, 3.1, 2.6,4.5],lineStyle:{normal:{opacity: 1}}},{name:'保時捷',smooth: true,type:'line',symbol:'none',data:[3.2, 4.1, 4.6, 5, 3.6, 2.4, 3.4,2,3, 5.6, 2, 3, 4, 2.1, 2.3,3.5],lineStyle:{normal:{opacity: 1}}},{name:'寶沃',smooth: true,type:'line',symbol:'none',data:[2.6, 3.4, 4, 4.2, 3.2, 2, 3,2.5,5, 4.2, 1.8, 3.6, 3.4, 1.8, 1.9,2.9],lineStyle:{normal:{opacity: 1}}},{name:'北奔',smooth: true,type:'line',symbol:'none',data:[2.1, 3, 3.5, 3.8, 2.8, 1.5, 2.4,2.9,4.1, 3.1, 1.2, 4, 3, 1.2, 1.6,2.4],lineStyle:{normal:{opacity: 1}}},{name:'奔馳',smooth: true,type:'line',symbol:'none',data:[1.5, 2.5, 3, 3.2, 2, 1, 3.6,2.1,4.5, 2.5, 0.8, 3.4, 2.5, 0.6, 1.8,2.1],lineStyle:{normal:{opacity: 1}}}]};//初始化echarts实例var myChart = echarts.init(document.getElementById('chartmain'));$('.charts-left-list li').bind('click',function(){var index = $(this).index();if($(this).hasClass('state-selected')){$(this).removeClass('state-selected');}else{$(this).addClass('state-selected').attr('value',index);}for(var i=0; i<option.series.length; i++){option.series[i].lineStyle.normal.opacity = 0.1;}if ($('.state-selected').length==0){$('.charts-left-list li').each(function(){var all_val = $(this).index();option.series[all_val].lineStyle.normal.opacity = 1;});    }else{$('.charts-left-list li.state-selected').each(function(){var the_val = $(this).attr('value');option.series[the_val].lineStyle.normal.opacity = 1;});}myChart.setOption(option);    });//使用制定的配置项和数据显示图表
    myChart.setOption(option);window.onresize = function () {myChart.resize();};</script>
</body>
</html>

 

转载于:https://www.cnblogs.com/a-cat/p/8494510.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571144.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php产品效果图,jQuery_基于JQuery制作的产品广告效果,效果图.如下: 动画效果介绍 - phpStudy...

基于JQuery制作的产品广告效果效果图.如下&#xff1a;动画效果介绍&#xff1a;这组广告效果是打开页面后图片会自动播放&#xff0c;从1-5共计5张图片&#xff0c;如果属标放到右下角的1、2、3、4、5列表上&#xff0c;可以自由进行切换到自己想看的图片上去。图片切换是由下…

Python on the Way, Day1 - Python基础1

一、 Python介绍 python的创始人为吉多范罗苏姆&#xff08;Guido van Rossum&#xff09;。1989年的圣诞节期间&#xff0c;吉多范罗苏姆为了在阿姆斯特丹打发时间&#xff0c;决心开发一个新的脚本解释程序&#xff0c;作为ABC语言的一种继承 Python可以应用于众多领域&#…

python数据显示为什么只能显示最后一个变量,Python变量和简单数据类型,之,的

变量介绍。变量就是代表某个数据(值)的名称&#xff0c;简单点说变量就是给数据起个名字。变量的特点。1)变量是计算机内存中的一块区域&#xff0c;变量可以存储规定范围内的值&#xff0c;而且值是可变的。2)在创建变量时会在内存中开辟一个空间。基于变量的数据类型&#xf…

【BZOJ2095】【POI2010】Bridge 网络流

题目大意 ​  给你一个无向图&#xff0c;每条边的两个方向的边权可能不同。要求找出一条欧拉回路使得路径上的边权的最大值最小。无解输出"NIE"。   \(2\leq n\leq 1000,1\leq m\leq 2000\) 题解 ​  我们先二分答案\(ans\)&#xff0c;把边权大于\(ans\)的边…

space index.php 7-14,SpacePack高效部署PHP生产环境

SpacePack 基于 Docker 为了快速部署 PHP 生产环境而产生的项目&#xff0c;它包含了一般项目中常用的组件&#xff0c;能够在最短的时间内产生一个完善并且优化过的 PHP 生产环境。容器版本SpacePack 默认包含了 OpenResty 1.13、PHP 7.2、MariaDB 10.3、Memcached 1.5、Redis…

云播自带解析php,使用PHP SDK,web端的华为云视频点播接入,加密视频播放的坑与解决方案-全代码篇...

下载phpdemo算是跑起来了&#xff0c;现在就要考虑租户系统如自身验证token的问题了。1、先介绍下我的代码目录2、文件执行的时序图和流程图2、代码demotest.phpfunction curl_request($url,$post,$cookie, $returnCookie0){$curl curl_init();curl_setopt($curl, CURLOPT_URL…

php获取h5视频直链,一种H5播放实时视频的方法与系统与流程

本发明涉及播放实时视频&#xff0c;尤其涉及一种h5播放实时视频的方法与系统。背景技术&#xff1a;h5是指第5代html&#xff0c;也指用h5语言制作的一切数字产品。所谓html是“超文本标记语言”的英文缩写。“超文本”是指页面内可以包含图片、链接&#xff0c;甚至音乐、程序…

基础题

1&#xff0c;别名&#xff0c;内部&#xff0c;外部&#xff0c;hash优先级&#xff1f; 2&#xff0c;screen协助 1.一台screen -S 协助名称 2.另外一台screen -ls 列出目前开的协助会话&#xff08;session&#xff09;&#xff0c;找到上面协助名称对应的session号。 3. sc…

大数据笔记(十三)——常见的NoSQL数据库之HBase数据库(A)

一.HBase的表结构和体系结构 1.HBase的表结构 把所有的数据存到一张表中。通过牺牲表空间&#xff0c;换取良好的性能。 HBase的列以列族的形式存在。每一个列族包括若干列 2.HBase的体系结构 主从结构&#xff1a; 主节点&#xff1a;HBase 从节点&#xff1a;RegionServer 包…

linux内核网络钩子函数使用,Linux内核IOCTL网络控制框架实现实例分析

4.6、inet_ioctl函数由于inet_ioctl函数内容分支很多,但功能、处理不难理解,所以我把一些不常见的内容都省去,挑简单重要的说,完全在于抛砖引玉:static int inet_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg){…switch(cmd){case FIOSETOWN://设置属主cas…

(转)递归转非递归的思路和例子

转自&#xff1a;http://blog.51cto.com/cnn237111/1241956 某些算法逻辑&#xff0c;用递归很好表述&#xff0c;程序也很好写。理论上所有的递归都是可以转换成非递归的。如果有些场合要求不得使用递归&#xff0c;那就只好改成非递归了。 通常改成非递归算法的思路&#xff…

iOS - 富文本

iOS--NSAttributedString超全属性详解及应用&#xff08;富文本、图文混排&#xff09; ios项目中经常需要显示一些带有特殊样式的文本&#xff0c;比如说带有下划线、删除线、斜体、空心字体、背景色、阴影以及图文混排&#xff08;一种文字中夹杂图片的显示效果&#xff09;。…

pdf.js 文字丢失问题 .cmaps

使用pdf.js 展示pdf文件 需求&#xff1a;电子发票类的pdf文件&#xff0c;以base64流的形式请求到&#xff0c;在浏览器中展示pdf文件 遇到的问题&#xff1a; 正常展示后&#xff0c;部分文字无法正常显示&#xff0c; 正常显示如下&#xff1a; 文件目录&#xff1a; js:fun…

超过4g的文件怎么上传到linux,怎么免费上传大于4G的文件到百度云 大于4G的文件不开会员怎么上传到百度云...

4G管家appv1.0 安卓版类型&#xff1a;系统工具大小&#xff1a;13.1M语言&#xff1a;中文 评分&#xff1a;10.0标签&#xff1a;立即下载百度云可以非常方便大家存储一些大文件资料&#xff0c;而且百度云的容量也非常高&#xff0c;不过如果你是普通用户的话要想上传大于4g…

android 屏幕坐标色彩,Android自定义View实现颜色选取器

Android 自定义View 颜色选取器&#xff0c;可以实现水平、竖直选择颜色类似 SeekBar 的方式通过滑动选择颜色。效果图xml 属性1.indicatorColor 指示点颜色2.indicatorEnable 是否使用指示点3.orientation 方向horizontal 水平vertical 竖直使用复制 \library\src…\ColorPick…

linux右键菜单的截图,Linux: 给右键菜单加一个“转换图片为jpg格式”

Linux上通常都会安装imagemagick这个小巧但又异常强大的工具。这个软件提供了一系列很好用的功能。这里说一说如何使用它的convert命令转换图片为jpg格式&#xff0c;以及如何把它添加到Thunar的右键菜单。convert转换图片为jpg格式用起来超简单&#xff1a;convert -format jp…

eclipse实现Android登录功能,eclipse开发安卓登录

划线的地方怎么解决啊&#xff1f;有没有大佬知道如何修改package com.example.login;import android.app.Activity;import android.content.Context;import android.content.Intent;import android.content.SharedPreferences;import android.content.SharedPreferences.Edito…

android tcp 最优窗口,Android 面试必备 - 计算机网络基本知识(TCP,UDP,Http,https)...

简介HTTP协议(超文本传输协议)和 UDP(用户数据包协议)&#xff0c;TCP 协议(传输控制协议)TCP/IP是个协议组&#xff0c;可分为四个层次&#xff1a;网络接口层、网络层、传输层和应用层。在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。在传输层中有TCP协议与UDP…

c语言10个数如何求最大值,C语言,输入10个数怎样输出10个数中最大值,最小值(大一计算机)...

可以参考下面的代码&#xff1a;#include int main(){int loop 10;int min, max, value;do{printf("输入整数:");scanf("%d", &value);if (loop10) {max min value; loop--; continue;} else {if (value > max) max value;if (value loop--;}} …

android波纹效果弹窗,Android自定义View实现波纹效果

Android自定义View实现波纹效果时间&#xff1a;2017-05-27 来源&#xff1a;移动互联网学院1、引言&#xff1a;随着Android智能手机的普及&#xff0c;Android应用得到了大力支持&#xff0c;而Android应用的市场前景也是非常的强势。在Android应用的实际开发中&#xff…