如何获取echarts点击饼状图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取echarts点击饼状图相关的知识,希望对你有一定的参考价值。

参考技术A 首先,在Java Web项目中新建一个JSP页面someChart.jsp,引入echarts核心JS
<script type="text/javascript" src="<%=basePath%>/scripts/echarts/build/dist/echarts.js"></script>
<script type="text/javascript">
// 路径配置
require.config(
paths:
echarts: "<%=basePath%>/scripts/echarts/build/dist"

);
</script>
如下图所示:

由于这里要用到折线图,需要将折线图的JS引入
require(
[
'echarts',
'echarts/chart/line'
],
如下图所示:

图形要在页面上显示,需要一个容器,这里在body里定义一个div
<body>
<div id="lineChart" style="width: 100%;height:100%;font-family: 微软雅黑;font-size: 12px;"></div>
</body>
如下图所示:

现在,编写形成折线图的核心js
function (ec)
var line = ec.init(document.getElementById('lineChart'));

var option =
tooltip:
show: true
,
legend:
data:['销量']
,
xAxis : [

type : 'category',
data : ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]

],
yAxis : [

type : 'value'

],
series : [

"name":"苹果销售量",
"type":"line",
"data":[8956, 2025, 3640, 5610, 8910, 5720, 3467, 9023, 8367, 5342, 6754, 8753]

]
;

line.setOption(option);

如下图所示:

启动Tomcat服务器,在浏览器上运行JSP页面,会看到一个折线图
如下图所示:

点击折线上的折点,会获取到X轴和Y轴值,说明这个需要给图一个点击事件,具体代码如下:
function queryXY(param)

var seriesIndex = param.seriesIndex;
var dataIndex = param.dataIndex;
var seriesName = param.seriesName;
var name = param.name;
var data = param.data;
var value = param.value;

console.dir(param);


由于在js利用console打印,可以在火狐浏览器上查看相应的参数指标,具体如下图所示:

在函数中添加alert,将参数指标打印在页面上
var str = "seriesIndex:"+seriesIndex+"****"+"dataIndex:"+dataIndex+"****"+"seriesName:"+seriesName+"****"+
"name:"+name+"****"+"data:"+data+"****"+"value:"+value;
alert(str);
如下图所示:

再次刷新浏览器,等折线出来后,点击上面的点
如下图所示:

Echarts饼状图

<head>
<meta charset="utf-8">
<title>ECharts</title>
<script src="js/esl.js"></script>
</head>
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="height:400px"></div>
<script type="text/javascript">
// 路径配置
require.config({
paths:{
‘echarts‘ : ‘js/echarts‘,
‘echarts/chart/pie‘ : ‘js/echarts‘
}
});


// 使用
require(
[
‘echarts‘,
‘echarts/chart/pie‘ // 使用柱状图就加载bar模块,按需加载
],
function (ec) {
// 基于准备好的dom,初始化echarts图表
var myChart = ec.init(document.getElementById(‘main‘));

option = {
title : {
text: ‘某站点用户访问来源‘,
subtext: ‘纯属虚构‘,
x:‘center‘
},
tooltip : {
trigger: ‘item‘,
formatter: "{a} <br/>{b} : {c} ({d}%)"
},
legend: {
orient : ‘vertical‘,
x : ‘left‘,
data:[‘直接访问‘,‘邮件营销‘,‘联盟广告‘,‘视频广告‘,‘搜索引擎‘]
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
series : [
{
name:‘访问来源‘,
type:‘pie‘,
radius : ‘55%‘,
center: [‘50%‘, ‘60%‘],
data:[
{value:335, name:‘直接访问‘},
{value:310, name:‘邮件营销‘},
{value:234, name:‘联盟广告‘},
{value:135, name:‘视频广告‘},
{value:1548, name:‘搜索引擎‘}
]
}
]
};

// 为echarts对象加载数据
myChart.setOption(option);
}
);
</script>
</body>

 

以上是关于如何获取echarts点击饼状图的主要内容,如果未能解决你的问题,请参考以下文章

怎样将itemstyle写在echarts饼状图的data域中

如何使用echarts做饼状图

echarts中柱体的颜色,饼状图的颜色设置、、、

Echarts作图之饼状图联动

echart饼状图怎么设置随机颜色

如何从数据库中获取到数据生成饼状图?(Java web)