标签:charts 断点 var void apach extend idm reac chart
echarts 官网:https://echarts.apache.org/zh/index.html
首先先下载
npm i echarts -S
第二步页面引入:、
import echarts from ‘echarts‘
第三步页面使用。我这里写了个demo,自己模拟了一个json数据。然后axios请求数据。存在state里,把state的数据弄到图标中。 注意,外层盒子一定要设置高度。
export default class Echarts extends Component { state = { data: [] } //请求数据 getEchartsData = () => { Axios.get(‘/echartsData.json‘).then(res => { this.setState({ data: res.data.list }) this.initEcharts(); //调用下 封装的Echarts }) } //封装Echarts initEcharts = () => { // var myChart = echarts.init(document.getElementsByClassName(‘echarts_wrap‘)[0]); var myChart = echarts.init(this.el); // 指定图表的配置项和数据 var option = { tooltip: { trigger: ‘item‘, formatter: ‘{a} <br/>{b}: {c} ({d}%)‘ }, legend: { orient: ‘vertical‘, left: 10, data: [‘直接访问‘, ‘邮件营销‘, ‘联盟广告‘, ‘视频广告‘, ‘搜索引擎‘] }, series: [ { name: ‘访问来源‘, type: ‘pie‘, radius: [‘50%‘, ‘70%‘], avoidLabelOverlap: false, label: { show: false, position: ‘center‘ }, emphasis: { label: { show: true, fontSize: ‘30‘, fontWeight: ‘bold‘ } }, labelLine: { show: false }, data: this.state.data } ] }; // 自动缩放 拖动屏幕 window.addEventListener(‘resize‘, () => { myChart.resize() }) // 处理点击事件判断点击的哪一个,进行一些逻辑处理 myChart.on(‘click‘, function (params) { switch (params.name) { case ‘直接访问‘: console.log(‘直接访问‘) break; case ‘邮件营销‘: console.log(‘邮件营销‘) break; default: break; } }); // 使用刚指定的配置项和数据显示图表。 myChart.setOption(option); } componentDidMount() { this.getEchartsData() //调用获取的数据 } render() { return ( <div className=‘views_echarts‘> <div className=‘echarts_wrap‘ ref={v => this.el = v}></div> </div> ) } }
标签:charts 断点 var void apach extend idm reac chart
原文地址:https://www.cnblogs.com/yetiezhu/p/12846010.html