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柱状图个数多,横坐标名称过长时横坐标名称显示不全,网上并没有搜到太好的方法,于是自己加工了下,将横坐标名称显示前六位,当鼠标放到上面的时候显示全名,下面是示例代码,可以直接拷贝测试 代 ...
随机推荐
- unity渲染优化
https://blog.csdn.net/yudianxia/article/details/79339103 https://blog.csdn.net/e295166319/article/de ...
- Springboot 项目启动设置
//配置默认访问路径 并且自动打开浏览器 需要创建独立文件 @Controller public class HomeController { @RequestMapping("/ ...
- Mp3下载
- java课堂第一次随机测试和课件课后动手动脑问题解决(2019-9-16 )
一.课堂测试 1.课堂测试:花二十分钟写一个能自动生成30道小学四则运算题目的 “软件” 要求 (1)减法结果不能为负数 (2)乘法结果不得超过一百,除法结果必须为整数 (3)题目避免重复: (4)可 ...
- luogu P3358 最长k可重区间集问题
网络流建图好难,这题居然是网络流(雾,一般分析来说,有限制的情况最大流情况可以拆点通过capacity来限制,比如只使用一次,把一个点拆成入点出点,capacity为1即可,这题是限制最大k重复,可以 ...
- 086、Java数组之对象数组的动态初始化
01.代码如下: package TIANPAN; class Book { private String title; private double price; public Book(Strin ...
- UGUI崭新崭新的新手
------------------------------------------------------------------------------------1--------------- ...
- WinCC V7.5安装过程截图
- 题解 loj3050 「十二省联考 2019」骗分过样例
CASE \(1\sim 3\) \(n\)组测试数据,每次输入一个数\(x\),求\(19^x\). 测试点\(1\),\(x=0,1,\dots n-1\),可以直接递推. 测试点\(2\)要开l ...
- VMware导入和删除虚拟机文件
VMware中导入已存在的虚拟机文件: 1.文件-->打开-->选择虚拟机文件-->完成 VMware中完全删除虚拟机文件 2.在虚拟机上右键单击-->管理--> ...