如何在 echarts 中实现环形图中间的样式自定义

ops/2024/12/23 16:12:53/

实现效果如图:
在这里插入图片描述
主要 series 中的配置:

series: [{label: {show: false},emphasis: {label: {show: true,formatter: function(params){return "{name|" + params.name +"}"+"\n"+"{unit|"+params.data.rate+"}"},textStyle: {	// 设置样式rich: {name: {fontSize: 18,// color: '#ffffff',fontWeight: 'bold',},unit: {fontSize: 14,color: '#ffffff'}}}}}}]

点击事件给与一个默认高亮,并且点击可以切换

drawCharts(){this.charts = this.$echarts.init(this.$refs.chart);const option = this.chartDataNew;this.charts.setOption(option, true);window.addEventListener("resize", this.charts.resize);this.$once("hook:beforeDestroy", () => {window.removeEventListener("resize", this.charts.resize);});// 默认选中第一项this.charts.dispatchAction({type: 'highlight',seriesIndex: 0,dataIndex: 0 // 这里设置为0,表示默认选中第一项});let myChart = this.charts;myChart.on('mousemove', function (params) {// 根据点击的扇区更新中间文字if (params.componentType === 'series') {let newOption = myChart.getOption();// 更新 graphic 中的文字内容newOption.graphic[0].style = {text: `${params.name} - ${params.value}`,textAlign: 'center',fill: '#fff', // 文字颜色fontSize: 20};// 取消之前选中的扇形if (newOption.series[0].selectedDataIndex !== params.dataIndex) {myChart.dispatchAction({type: 'downplay',seriesIndex: 0,dataIndex: newOption.series[0].selectedDataIndex});}// 选中当前点击的扇形myChart.dispatchAction({type: 'highlight',seriesIndex: 0,dataIndex: params.dataIndex});// 更新选中的扇形索引newOption.series[0].selectedDataIndex = params.dataIndex;myChart.setOption(newOption);}});

http://www.ppmy.cn/ops/144331.html

相关文章

Converseen:全能免费批量图像处理专家

还在为繁琐的图像处理任务而烦恼吗?Converseen 是一款功能卓越且完全免费的批量图像处理软件,它以其卓越的易用性、惊人的处理速度和强大的实用性赢得了用户的广泛赞誉。无论您是专业摄影师、设计师,还是仅仅需要处理大量图片,Con…

如何处理对象的状态变化?如何实现工厂模式?

使用成员变量:可以在类中定义成员变量来表示对象的状态,通过修改这些成员变量的值来反映对象的状态变化。封装状态修改操作:将修改状态的操作封装在成员函数中,确保状态的改变遵循一定的规则和逻辑,防止非法状态的出现…

arXiv-2024 | 当视觉语言导航遇见自动驾驶!doScenes:基于自然语言指令的人车交互自主导航驾驶数据集

作者:Parthib Roy, Srinivasa Perisetla, Shashank Shriram, Harsha Krishnaswamy, Aryan Keskar, Ross Greer 单位:加州大学默塞德分校Mi实验室 原文链接:doScenes: An Autonomous Driving Dataset with Natural Language Instruction for…

127、SQLSERVE中union all 和union的使用场景

使用:在 SQL Server 中,UNION 和 UNION ALL 是用于合并两个或多个 SELECT 查询结果的操作符。两者区别union all 会去重,union 不会去重例子: 两张表:stu:stu_id,name emplyee:em_id,name 需求1:sql实…

设计模式-中介模式

背景(与外观模式相似) 智能家庭中包括各种设备:闹钟、咖啡机、电视机、窗帘。 主人要看电视时,执行以下操作:闹钟响起-》咖啡机做咖啡-》窗帘自动落下-》电视开始播放 传统思路: 闹钟类接收命令&#x…

八字精批API接口PHP实现返回json数据

引言 八字精批是根据个人的出生信息(包括姓名、性别、出生年、月、日和时)进行命理分析的重要工具。在中国传统文化中,八字命理被广泛应用于个人命运、性格分析以及未来发展的预测。本文将介绍一个八字精批的 API 接口,详细说明其…

leetcode之hot100---206环形链表(C++)

思路一:哈希表 遍历链表,同时借助哈希表判断当前遍历到的节点是否已经被访问过,如果当前节点已被访问过,则说明存在环 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* L…

WPF MVVM 数据表格DataGrid的表头Header无法进行数据绑定

话不多说&#xff0c;直接上案例代码&#xff0c;因为我也不知道为什么不能进行数据绑定。 DataGrid <DataGrid ColumnHeaderHeight"55"ItemsSource"{Binding BottomFormingMolds}" SelectedItem"{Binding SelectedItem3,ModeTwoWay}" …