您的位置:首页 > 其它

echarts 点击事件

2015-08-07 17:14 471 查看
下面分享一下,给echarts的报表添加事件,并通过事件获取点击到的数据:

1、初始化:
require.config({
packages: [
{
name: 'echarts',
location: '../../JavaScript/echarts',
main: 'echarts'
},
{
name: 'zrender',
location: '../../JavaScript/zrender',// zrender与echarts在同一级目录
main: 'zrender'
}
]
});
require(
[
'echarts',
'echarts/chart/bar',
'echarts/chart/pie'
],
function (ec) {
var myChart_Category = ec.init(document.getElementById('div_pieCategory'));
var myChart_State = ec.init(document.getElementById('div_pieState'));
var myChart_Bar = ec.init(document.getElementById('div_bar'));
SetStatisticsByCategory(ec, myChart_Category);
SetStatisticsByState(ec, myChart_State);
SetStatisticsByBeginTime(ec, myChart_Bar);
//设置点击事件
var ecConfig = require('echarts/config');
myChart_Category.on(ecConfig.EVENT.PIE_SELECTED, function (param) {
var selected = param.selected;
//deBugger;
var serie
serie = optionpie_category.series[0];
if (jQuery.inArray(true, selected[0]) > -1) {
for (var i = 0; i < serie.data.length; i++) {
if (selected[0][i]) {
$("#hid_category").val(serie.data[i].name);
}
}
}
else {
$("#hid_category").val("");
}
GetList(true);
})
myChart_State.on(ecConfig.EVENT.PIE_SELECTED, function (param) {
var selected = param.selected;
var serie;
serie = optionpie_state.series[0];
if (jQuery.inArray(true, selected[0]) > -1) {
for (var i = 0; i < serie.data.length; i++) {
if (selected[0][i]) {
$("#hid_state").val(serie.data[i].name);
}
}
}
else {
$("#hid_state").val("");
}
GetList(true);
})
myChart_Bar.on(ecConfig.EVENT.CLICK, function (param) {
var selected = param;
var xAxis;
xAxis = optionpie_bar.xAxis[selected.seriesIndex];
for (var i = 0; i < xAxis.data.length; i++) {
if (i == selected.dataIndex) {
if ($("#hid_date").val() != xAxis.data[i]) {
$("#hid_date").val(xAxis.data[i]);
} else {
$("#hid_date").val("");
}
GetList(true);
}
}
})
}
)


说明:

1、设置时间需要引用config.js :var ecConfig = require('echarts/config');

2、饼图的数据获取很简单:饼图点击事件:ecConfig.EVENT.PIE_SELECTED

饼图的数据:var selected = param.selected;

3、柱状图:ecConfig.EVENT.CLICK

在获取数据的时候,设置了一个隐藏域放置已经点击的数据。
var selected = param;
var xAxis;
xAxis = optionpie_bar.xAxis[selected.seriesIndex];
for (var i = 0; i < xAxis.data.length; i++) {
if (i == selected.dataIndex) {
if ($("#hid_date").val() != xAxis.data[i]) {
$("#hid_date").val(xAxis.data[i]);
} else {
$("#hid_date").val("");
}
GetLawCaseList(true);
}
}


转发注明:IT分享 http://www.suchso.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: