extjs整合echarts柱状图,并实现柱状图点击事件
时间: 2023-11-23 17:56:07 浏览: 173
以下是ExtJS整合Echarts实现柱状图,并实现柱状图点击事件的示例代码:
```javascript
// 定义ExtJS的store
var store = Ext.create('Ext.data.Store', {
fields: ['name', 'value'],
data: [
{ name: 'Mon', value: 120 },
{ name: 'Tue', value: 200 },
{ name: 'Wed', value: 150 },
{ name: 'Thu', value: 80 },
{ name: 'Fri', value: 70 },
{ name: 'Sat', value: 110 },
{ name: 'Sun', value: 130 }
]
});
// 定义Echarts的option
var option = {
xAxis: {
type: 'category',
data: store.collect('name')
},
yAxis: {
type: 'value'
},
series: [{
data: store.collect('value'),
type: 'bar'
}]
};
// 定义ExtJS的panel
var panel = Ext.create('Ext.panel.Panel', {
width: 600,
height: 400,
renderTo: Ext.getBody(),
layout: 'fit',
items: [{
xtype: 'chart',
store: store,
axes: [{
type: 'numeric',
position: 'left',
fields: ['value'],
title: {
text: 'Value',
fontSize: 15
},
grid: true
}, {
type: 'category',
position: 'bottom',
fields: ['name'],
title: {
text: 'Name',
fontSize: 15
}
}],
series: [{
type: 'bar',
xField: 'name',
yField: 'value',
listeners: {
itemclick: function(series, item, event) {
// 点击事件处理
console.log(item.record.get('name') + ': ' + item.record.get('value'));
}
}
}]
}],
listeners: {
afterrender: function() {
// 渲染Echarts
var chart = this.down('chart');
chart.setOption(option);
}
}
});
```
在上述代码中,我们首先定义了一个ExtJS的store,用于存储数据。然后定义了Echarts的option,包括x轴、y轴和series。接着定义了一个ExtJS的panel,包含一个chart组件,用于显示Echarts图表。在chart组件中,我们定义了x轴、y轴和series,并添加了一个itemclick事件监听器,用于处理柱状图的点击事件。最后,在panel的afterrender事件中,我们渲染了Echarts图表。
阅读全文
相关推荐














