Echarts 提示组件
1.开启指示器
- 默认情况下,指示器是关闭状态,如果需要开启,直接配置tooltip字段即可
var option = {
tooltip:{},
}
2.指示器的触发类型
- 触发类型的字段为trigger,可选值如下
| 可选值 | 说明 |
|---|---|
| 'item' | 数据项图形触发,主要在散点图,饼图等无类目轴的图表中使用 |
| 'axis' | 坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用。 |
| 'none' | 什么都不触发 |
- 实际使用过程中,这个字段无需手动指定,图表会自动匹配当前的图表类型
3.设定指示器的模式
- 指示器的模式分为4种,通过tooltip.axisPointer.type进行配置
| 类型 | 说明 |
|---|---|
| 'none' | 无指示器,默认 |
| 'line' | 直线指示器,适用于折线图 |
| 'shadow' | 阴影指示器,适用于柱形图 |
| 'cross' | 十字准星指示器 |
- 指示器的模式一般用在坐标轴图表中,饼图这种图表一般不需要,如图:
(1)none:没有指示器

(2)line:直线指示器,线条的样式通过tooltip.axisPointer.lineStyle进行配置

(3)'shadow':阴影指示器,阴影的样式通过tooltip.axisPointer.shadowStyle进行配置

(4)'cross':十字准星指示器,能看到当前位置对应的X轴和Y轴的位置,准星的样式通过tooltip.axisPointer.crossStyle进行配置

4.文本值格式化(从 v5.3.0 开始支持)
- valueFormatter:tooltip 中数值显示部分的格式化回调函数,但是不能针对特定的系列做处理,如果有双Y轴时不适用
valueFormatter: function(value){
return value + '%'
}
5.封装提示组件
默认的提示组件一般预先设定好了一定的格式,例如数据颜色,数据名称和值等等,如图:

如果想要个样式一样,但是数据可以自定义的组件,就需要进行封装,封装需要做到以下两点:
- 布局:每行分为3个元素,分为左中右3列,左侧圆点,中间系列名称,右侧数值,此外还有颜色,间距等等
- 数据:数据需要动态获取,包括系列名称,当前数值,当前颜色,当前X轴的值
CSS代码如下:
<style>
.tooltip-title{
font-size:14px;
}
.tooltip-item{
display: flex;
align-items: center;
justify-content: space-between;
position: relative;
padding:0;
}
.tooltip-item .tooltip-round{
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 10px;
height: 10px;
border-radius: 50%;
content: "";
/* background-color: #fff; */
}
.tooltip-item .tooltip-left{
margin:0 20px 0 15px;
font-size: 12px;
}
.tooltip-item .tooltip-right{
font-size: 12px;
color: black;
font-weight: bold;
}
</style>
js代码;
setToolTip(params){
//当前分类名称
var html = `<div class="tooltip-title">${params[0].axisValue}</div>`
for(var i=1;i<params.length;i++){
//数据名称
var name = params[i].seriesName
//颜色
var color = params[i].color
//数值
var value = params[i].value
//特定的数值转换(可选)
if(name.includes('率')){
value += '%'
}
html += (`<div class="tooltip-item"><span class="tooltip-round" style="background-color: ${color};"></span><span class="tooltip-left">${name}</span><span class="tooltip-right">${value}</span></div>`)
}
//包裹一层外容器
html = `<div class="tooltip-box">${html}</div>`
return html
}
调用:
tooltip:{
trigger:"axis",
formatter:function(params){
//this=>window that=vm
return that.setToolTip(params)
}
},
Echarts 提示组件的更多相关文章
- ECharts 提示框组件Tooltip属性大全(包含文本注释)
tooltip: { // 提示框组件:可以设置在全局(tooltip),可以设置在坐标系中(grid.tooltip.polar.tooltip.single.tooltip),可以设置在系列中(s ...
- 转:ECharts图表组件入门教程之Theme:ECharts图表的皮肤是什么?如何给图表换主题(皮肤)Theme?
一.什么是ECharts图表的皮肤(主题)? 针对这个问题我只能这样回答,ECharts图表的主题(皮肤)就犹如人的衣服一样,是用来衬托和渲染主体,使其变得更加美观好看的目的.你去过ECharts图表 ...
- 在Vue中echarts可视化组件的使用
echarts组件官网地址:https://echarts.apache.org/examples/zh/index.html 1.找到脚手架项目所在地址,执行cnpm install echarts ...
- [js开源组件开发]tip提示组件
tip提示组件 常见的应用场景中,总是难免会遇到提示信息,比如显示不完全时需要鼠标移上去显示title,比如验证时的错误提示,比如操作按钮的辅助说明等,所以我独立出来了一个小的js组件,tip提示组件 ...
- combobox自己主动提示组件加入无选中项清空功能
这个标题非常绕口,只是这也是想了半天的成果,对不起体育老师了. 标题想表达的是:之前讲过的用combobox实现自己主动提示组件.只是如今规定该组件不能够保存data中不存在的数据. 最初的想法是通过 ...
- 用echartsjs 实现散点图与table表格双向交互,以及实现echarts取自于table数据,和自定义echarts提示内容
本人研究echarts已经有一段时间了,今天就分享几个关于echarts的小技巧.虽然看起来简单,但做起来却很繁琐,不过实用性倒是很好. 在一个大的页面中,左边为table表格,右边为echarts的 ...
- vue-cli ——解决多次复用含有Echarts图表组件的问题
在vue项目里,组件复用是一件很开心的事,可以节省很多时间去排版,达到事半功倍效果,但是昨晚在vue-cli项目里组件复用时发现基于Echarts图表的组件不能够复用,昨晚捯饬了很久,终于还是解决了这 ...
- 转:ECharts图表组件之简单关系图:如何轻松实现另类站点地图且扩展节点属性实现点击节点页面跳转
站点地图不外乎就是罗列一个网站的层次结构,提炼地讲就是一个关系结构图.那么我们如何巧用ECharts图表组件内的简单关系结构图来实现一个站点的地图结构呢?另外如何点击某个节点的时候实现页面跳转呢? 针 ...
- vue echarts vue-echarts组件使用
1.git地址 https://github.com/ecomfe/vue-echarts 2.使用 (1)安装 npm install vue-echarts --save-dev (2)引入 im ...
- 利用easyUI的combobox打造自己主动提示组件
自己主动提示是时下一个非常流行的功能,比方说百度.谷歌的搜索输入框都使用到了这么一个功能. 因为easyUI的combobox设计师已经考虑到了这个功能.所以仅仅需简单几步我们能够轻松打造自己的自己主 ...
随机推荐
- Angular 18+ 高级教程 – Angular CLI
前言 这篇会列出我开发中常用的 command. 并给予一些简单的说明 Command Format 先了解一下几个简单的 command 格式: 缩写 shortform 这个是完整版 ng gen ...
- OData – OData vs GraphQL
GraphQL 很火, 很厉害, 但是它和 OData 有本质的区别. 所以并不是说任何一样对比另一个绝对的好. GraphQL is not OData twitter 的讨论 有几个点是我能 Ge ...
- C# – 冷知识 (新手)
替 Action/Func Parameter 设置名字 public static void MatchBracket(string value, string bracket, Action< ...
- APP专项测试之兼容性测试
1.APP 兼容性测试认识 随着 APP 应用范围越来越广,用户群体越来越大,终端设备的型号也越来越多,移动终端碎片化加剧,使得 APP 兼容性测试成为测试质量保障必须要考虑的环节. APP 兼容性测 ...
- 大模型应用开发初探 : 通用函数调用Planner
大家好,我是Edison. 上一篇,我们了解了什么是AI Agent以及如何用Semantic Kernel手搓一个AI Agent.有朋友留言说,自动函数调用对大模型有较高的要求,比如Azure O ...
- centos7安装MySQL及远程配置
#下载mysql源安装包 shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm #安装m ...
- linux中backport printk和front printk的区别
在Linux内核中,"backport printk"和"front printk"都是用于记录内核消息和调试信息的机制,但它们的工作方式和使用场景有一些区别. ...
- 常用的linux命令 docker常用命令
mkdir 新建目录 rmdir 删除目录 rm只能删除文件,不能删除目录 cp test.txt Documents 进入容器的目录 docker exec -it <container_id ...
- vue2 + webpack 分析报告 report == webpack-bundle-analyzer
packjson.js 配置 "build-report":"vue-cli-service build --report", 执行 : npm run bui ...
- 0608-nn和autograd的区别
0608-nn和autograd的区别 目录 一.nn 和 autograd 的区别 二.Function 和 Module 在实际中使用的情况 pytorch完整教程目录:https://www.c ...