当我点击饼图时,出现相应的内容,并重新渲染饼图展示内容 饼图点击事件
this.conechart.on('click', (params) => { params.name });
获取的是点击的对应的板块名 利用获取的板块名,去接口调取对应的数据 , 调取数据是异步调用 ,所以重新渲染视图要在 异步中渲染,否则同步渲染不出数据
var options = this.conechart.getOption() options.series[0].data = res.data this.conechart.setOption(options)
getoption()是获取当前视图配置项 进行重新赋值 setoption()是挂载配置项 完整代码
initconechart () { this.conechart = this.$echarts.init(document.getElementById('conechart')); const option = { title: { text: '风险占比', // subtext: 'Fake Data', left: '45%', top: "20px", textStyle:{ fontSize:30, } }, tooltip: { trigger: 'item' }, legend: { type: 'scroll', orient: 'vertical', left: 'left', top:5, }, series: [ { name: 'Access From', type: 'pie', radius: '50%', left:"10%", top:"15%", data: this.piedata, emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } }, label: { alignTo: "labelLine", distanceToLabelLine: 10, edgeDistance: "15%" }, labelLayout: { fontSize: "16" } } ] }; this.conechart.setOption(option) this.conechart.on('click', (params) => { if ( this.isshow == 0) { this.getWarnInfoBySecond(params.name) } }); },
if判断是一个开关,控制只能点击一次
// 更新视图 getWarnInfoBySecond(name) { getWarnInfoBySecond(name).then(res => { var options = this.conechart.getOption() options.series[0].data = res.data this.conechart.setOption(options) this.isshow = 1 }) },
总结
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)