mirror of
https://github.com/hustcc/echarts-for-react.git
synced 2025-12-08 20:16:09 +00:00
86 lines
1.8 KiB
Markdown
86 lines
1.8 KiB
Markdown
---
|
|
title: Event
|
|
order: 4
|
|
---
|
|
|
|
## Event
|
|
|
|
```tsx
|
|
import React, { useState } from 'react';
|
|
import ReactECharts from 'echarts-for-react';
|
|
|
|
const Page: React.FC = () => {
|
|
const option = {
|
|
title : {
|
|
text: '某站点用户访问来源',
|
|
subtext: '纯属虚构',
|
|
x:'center'
|
|
},
|
|
tooltip : {
|
|
trigger: 'item',
|
|
formatter: "{a} <br/>{b} : {c} ({d}%)"
|
|
},
|
|
legend: {
|
|
orient: 'vertical',
|
|
left: 'left',
|
|
data: ['直接访问','邮件营销','联盟广告','视频广告','搜索引擎']
|
|
},
|
|
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:'搜索引擎'}
|
|
],
|
|
itemStyle: {
|
|
emphasis: {
|
|
shadowBlur: 10,
|
|
shadowOffsetX: 0,
|
|
shadowColor: 'rgba(0, 0, 0, 0.5)'
|
|
}
|
|
}
|
|
}
|
|
]
|
|
};
|
|
|
|
const [count, setCount] = useState(0);
|
|
|
|
function onChartReady(echarts) {
|
|
console.log('echarts is ready', echarts);
|
|
}
|
|
|
|
function onChartClick(param, echarts) {
|
|
console.log(param, echarts);
|
|
setCount(count + 1);
|
|
};
|
|
|
|
function onChartLegendselectchanged(param, echarts) {
|
|
console.log(param, echarts);
|
|
};
|
|
|
|
return (
|
|
<>
|
|
<ReactECharts
|
|
option={option}
|
|
style={{ height: 400 }}
|
|
onChartReady={onChartReady}
|
|
onEvents={{
|
|
'click': onChartClick,
|
|
'legendselectchanged': onChartLegendselectchanged
|
|
}}
|
|
/>
|
|
<div>Click Count: {count}</div>
|
|
<div>Open console, see the log detail.</div>
|
|
</>
|
|
);
|
|
};
|
|
|
|
export default Page;
|
|
```
|