echarts 柱状图的选中模式实现-被选中变色和再次选中为取消变色
方法:
function barCharShow(curr_dim,divId,result_data){
mutilDim(curr_dim);//维度信息
var paint = initEcharts(echarts,divId);
var option = buildStandardBar();
option.xAxis[0].data=result_data.xAxis_data;
option.series[0].data= result_data.data;
option.series[1].data=result_data.data_year;
option.series[2].data= result_data.data_mom;
paint.setOption(option);
var select_dim_id = "dim_"+(Number(curr_dim)+1);
// paint.on('click', function (params) {
12// option.series[params.seriesIndex].itemStyle.normal.color=function (param){
// if(params.dataIndex == param.dataIndex &&$("#parent_dim_"+curr_dim).val()!=params.name){
// return '#FF3333';
// }else{
// return '#00FFCC';
// }
// };
paint.on('click', function (params) {
option.series[].itemStyle.normal.color=function (param){//params.seriesIndex
if(params.dataIndex == param.dataIndex &&$("#parent_dim_"+curr_dim).val()!=params.name){
return '#FF3333';
}else{
return '#00FFCC';
}
};
option.series[].itemStyle.normal.color=function (param){
if(params.dataIndex == param.dataIndex &&$("#parent_dim_"+curr_dim).val()!=params.name){
return '#FF3333';
}else{
return '#999933';
}
};
option.series[].itemStyle.normal.color=function (param){
if(params.dataIndex == param.dataIndex &&$("#parent_dim_"+curr_dim).val()!=params.name){
return '#FF3333';
}else{
return '#66FF00';
}
};
paint.setOption(option);
//alert(params);
//$("#"+select_dim_id).val(params.data.key);
if($("#parent_dim_"+curr_dim).val()==params.name){
//取消维度选择
$("#parent_dim_"+curr_dim).val(null);
}else{
//维度选择
$("#parent_dim_"+curr_dim).val(params.name);
}
//获取全部维度-拼维度
var str="";
for (var i = 1; i <=curr_dim; i++) {
if($("#parent_dim_"+i).val()!=""&&$("#parent_dim_"+i).val()!=null){
if(i>1){
str+="-";
}
str+=$("#parent_dim_"+i).val();
}
}
$("#parent_mdim_"+curr_dim).val(str);
$("#"+select_dim_id).trigger("change");
//
});
}
柱状图:
//标注柱状图
function buildStandardBar(){
var option = {
color: ['#00FFCC','#999933','#66FF00'],
title : {
text: ' ',
subtext: ' '
},
grid: [
{x: '3%', y: '10%', width: '94%', height: '80%',x2:'1%', y2: '3%'},
],
tooltip : {
trigger: 'axis'
},
legend: {
textStyle: {
color: '#fff',
fontSize:15
},
data:['当前','环比','同比']
},
calculable : true,
xAxis : [
{
type : 'category',
boundaryGap: true,
axisLabel:{
color:'#fff',
interval:0,
rotate:15,//倾斜度 -90 至 90 默认为0
textStyle:{
fontSize:15,
}
},
axisLine:{
lineStyle:{
color:'#fff'
}
},
data : [ ]
}
],
yAxis : [
{
type : 'value',
axisLabel:{
color:'#fff',
rotate:-50,//倾斜度 -90 至 90 默认为0
textStyle:{
fontSize:15,
},
formatter: function(value,index){//纵坐标单位转换
if((value/100000000)>=1){
return (value/100000000).toFixed(0)+" 亿";
}else if((value/10000000)>=1){
return (value/10000000).toFixed(0)+"千万";
}else if((value/1000000)>=1){
return (value/1000000).toFixed(0)+"百万";
}else if((value/10000)>=1){
return (value/10000).toFixed(0)+" 万";
}else{
return value;
}
}
},
axisLine:{
lineStyle:{
color:'#fff'
}
},
axisTick:{
show:false
},
splitLine:{
show:false
}
}
],
series : [
{
name:'当前',
type:'bar',
data:[],
barCategoryGap:'10%',
barGap:'40%',
itemStyle : {
normal : {
label: {
show: true,
position: 'top',
textStyle: {
color: '#FFFF00',
fontSize:15
}
},
color: '#00FFCC'
}, }
},
{
name:'同比',
type:'bar',
data:[ ],
barCategoryGap:'10%',
barGap:'40%',
itemStyle : {
normal : {
label: {
show: true,
position: 'top',
textStyle: {
color: '#FFFF00',
fontSize:15
}
}
}, } },
{
name:'环比',
type:'bar',
data:[ ],
barCategoryGap:'10%',
barGap:'40%',
itemStyle : {
normal : {
label: {
show: true,
position: 'top',
textStyle: {
color: '#FFFF00',
fontSize:15
}
}
}, } }
]
};
return option;
}

echarts 柱状图的选中模式实现-被选中变色和再次选中为取消变色的更多相关文章
- vue Echarts 柱状图点击事件
drawBar(){ let that = this; let chart = this.$echarts.init(document.getElementById('bar-graph')); le ...
- Echarts柱状图实现不同颜色渐变色
第一次写文,只是想记录一下自己平时发现的小功能,这篇主要是实现echarts柱状图,每个柱子实现不同颜色的渐变色,也是第一次接触echarts,后台使用ssm,前台是extjs,直接上效果图 直接上j ...
- EasyUI tree 选中父节点子节点全部选中,选中子节点父节点不选中
需求:EasyUI tree 选中父节点子节点全部选中,选中子节点父节点不选中 效果: /** * 给树增加onCheck事件,首先使用cascadeCheck:false属性禁止全选, ...
- echarts柱状图标签显示不完全的问题
echarts 柱状图当x轴标签数目超过一定数目时在小尺寸设备上第一个和最后一个标签不显示(不是重叠),axisLabel设置interval:0也不起作用; 解决办法: 这个问题存在于4.0版本以上 ...
- CheckStateChanged(复选框选中状态更改事件)和 CheckedChanged(单选按钮选中状态更改事件)二者区别?
CheckStateChanged(复选框选中状态更改事件)和 CheckedChanged(单选按钮选中状态更改事件)二者区别: 复选框控件(CheckBox)提供了CheckedChanged控件 ...
- JQuery 判断checkbox是否选中,checkbox全选,获取checkbox选中值
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 关于Echarts柱状图实现的细节
echarts柱状图显示数值[1] echarts2: itemStyle : { normal: {label : {show: true, position: 'top'}}}, echarts ...
- echarts柱状图坐标文字显示不完整解决方式
echarts柱状图坐标文字显示不完整解决方式 本文转载自:https://jingyan.baidu.com/article/ab69b2707a9aeb2ca7189f0c.html echart ...
- echarts柱状图个数多,横坐标名称过长显示不全解决方法
当echarts柱状图个数多,横坐标名称过长时横坐标名称显示不全,网上并没有搜到太好的方法,于是自己加工了下,将横坐标名称显示前六位,当鼠标放到上面的时候显示全名,下面是示例代码,可以直接拷贝测试 代 ...
随机推荐
- PaperReading20200221
CanChen ggchen@mail.ustc.edu.cn Busy... Human-level concept learning through probabilistic program i ...
- input不显示边框
参考:https://www.cnblogs.com/mmykdbc/p/6200963.html input{ border: none; outline: none; }
- Python学习笔记001
二进制 换算: 十进制转二进制 除二取余,然后倒序排列,高位补零. 将正的十进制数除以二,得到的商再除以二,依次类推知道商为零或一时为止,然后在旁边标出各步的余数,最后倒着写出来,高位补零就可以. 二 ...
- 第1节 kafka消息队列:10、flume与kafka的整合使用
11.flume与kafka的整合 实现flume监控某个目录下面的所有文件,然后将文件收集发送到kafka消息系统中 第一步:flume下载地址 http://archive.cloudera.co ...
- python机器学习基本概念快速入门
//2019.08.01机器学习基础入门1-21.半监督学习的数据特征在于其数据集一部分带有一定的"标记"和或者"答案",而另一部分数据没有特定的标记,而更常见 ...
- Vue-cli3与springboot项目整合打包
一.需求 使用前后端分离编写了个小程序,前端使用的是vue-cli3创建的项目,后端使用的是springboot创建的项目,部署的时候一起打包部署,本文对一些细节部分进行了说明. 二 ...
- POJ 1979 Red and Black 四方向棋盘搜索
Red and Black Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 50913 Accepted: 27001 D ...
- 配置uboot指定nfs挂载根文件系统
背景: 文件系统的调试也建议在 网络中进行. 概念: NFS是Network File System的缩写及网络文件系统. 要功能是通过局域网络让不同的主机系统之间可以共享文件或目录. NFS系统和W ...
- 洛谷 P4391 [BOI2009]Radio Transmission 无线传输
题目传送门 解题思路: 本题所要求的循环节,其实就是最长公共前缀的前缀长度减去前后缀重叠的一部分 AC代码: #include<iostream> #include<cstdio&g ...
- SQL statement ignored
存储过程语句错误,字段或变量名可能拼错,导致存储过程无法执行. 解决办法:仔细检查存储过程里的变量,字段,语句等是否正确.