echarts自定义tooltip,给tooltip增加百分号%

这篇具有很好参考价值的文章主要介绍了echarts自定义tooltip,给tooltip增加百分号%。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.formatter为回调函数:

支持返回 HTML 字符串或者创建的 DOM 实例。

(params: Object|Array, ticket: string, callback: (ticket: string, html: string)) => string | HTMLElement | HTMLElement[]

在 trigger 为 ‘axis’ 的时候,或者 tooltip 被 axisPointer 触发的时候,params 是多个系列的数据数组。其中每项内容格式同上,并且,

{
componentType: ‘series’,
// 系列类型
seriesType: string,
// 系列在传入的 option.series 中的 index
seriesIndex: number,
// 系列名称
seriesName: string,
// 数据名,类目名
name: string,
// 数据在传入的 data 数组中的 index
dataIndex: number,
// 传入的原始数据项
data: Object,
// 传入的数据值。在多数系列下它和 data 相同。在一些系列下是 data 中的分量(如 map、radar 中)
value: number|Array|Object,
// 坐标轴 encode 映射信息,
// key 为坐标轴(如 ‘x’ ‘y’ ‘radius’ ‘angle’ 等)
// value 必然为数组,不会为 null/undefied,表示 dimension index 。
// 其内容如:
// {
// x: [2] // dimension index 为 2 的数据映射到 x 轴
// y: [0] // dimension index 为 0 的数据映射到 y 轴
// }
encode: Object,
// 维度名列表
dimensionNames: Array,
// 数据的维度 index,如 0 或 1 或 2 …
// 仅在雷达图中使用。
dimensionIndex: number,
// 数据图形的颜色
color: string
}

2.数值增加百分号%

效果图如下:

echarts自定义tooltip,给tooltip增加百分号%,echarts,javascript,前端

js代码如下:

tooltip: {
  trigger: "axis",
  formatter: function(val) {
    let string = val[0].name + "<br>";
    val.forEach(v => {
      string += `<div style='display: flex;align-items: center;justify-content: space-between;'><span>${v.marker}${v.seriesName}</span>&nbsp; &nbsp; <span style='font-weight: 700;'>${v.value}%</span></div>`
    });
    return string
  }
},

3. tooltip框内容换行

有时候展示的参数过多,会导致tooltip框超出屏幕范围,所以需要进行换行处理。

代码如下:主要配置extraCssText和confine参数

data() {
  return {
   tooltipWidth: 450,
   yUnit: "%"
  };
},

// 下面是echarts的tooltip参数
// extraCssText字段:可以给tooltip修改样式。
// confine: 控制tooltip弹框不超出echarts图的显示区域。true:不能超出
tooltip: {
  show: true,
  trigger: 'axis',
  extraCssText: `display: flex; flex-wrap: wrap; max-width: ${this.tooltipWidth}px;`,
  confine: true,
  formatter: function(val) {
    let string = `<div style="width: 100%;">${val[0].name}</div>` + "<br>";
    val.forEach((v, i) => {
      string += `<div style='display: flex;align-items: center;justify-content: space-between;padding: 0 10px; width: 50%; padding-right: 30px;box-sizing: border-box;'>
         <span>${v.marker}${v.seriesName}</span>&nbsp; &nbsp; 
         <span style='font-weight: 700;'>${v.value}`+ (that.yUnit[i] ? that.yUnit[i] : '')  +`</span>
       </div>`
    });
    return string
  }
},

效果图如下图:

echarts自定义tooltip,给tooltip增加百分号%,echarts,javascript,前端

总结

如有疑问,请评论区留言。文章来源地址https://www.toymoban.com/news/detail-612803.html

到了这里,关于echarts自定义tooltip,给tooltip增加百分号%的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue中echart的tooltip自定义显示内容

    目的:让tooltip显示自定义格式数据,甚至是显示横纵坐标以外的数据。 1. 先介绍一下常用情况 。 tooltip的trigger有三种选项“item”“axis”“none”,选择axis就是显示横坐标的内容。 这样设置,鼠标滑过对应点时,tooltip就会显示横坐标内容和对应纵坐标的温度和信号。 2. 若要

    2024年02月09日
    浏览(34)
  • Echarts图表,利用formatter自定义tooltip的内容和样式

    在展示多数据图表的时候 有的时候需要图例也展示出一些内容来,例如官方这样子:鼠标悬停的时候展示该点数据 但是,官方提供的样式有时不适用所有的开发场景 我的项目需要实现鼠标悬停在某一点的时候,只展示该条线的数据,以及一些图表中未表现的数据。参照原型

    2024年02月11日
    浏览(57)
  • echarts雷达图图例自定义以及tooltip动态展示一维数据

     实现效果: 虽然上面实现了图例自定义,但是仔细看会发现图例与文字不在一条水平线上,利用富文本配置,对height进行调整,实现图例图片与文字对齐。 实现效果: 官方文档中默认显示该维度的所有数据 而遇到的需求是显示鼠标悬浮该轴的数据对比 实现:   虽然实现

    2024年02月16日
    浏览(33)
  • G2 图表 问题集合(自定义tooltip标题,折线图上增加标注点,x轴刻度自定义...)

    最近一直在处理G2 图表问题,发现这个图表除了官方文档,百度上很少能百度到具体的用法及案例,因此总结了此篇文章记录一下踩坑集合,记录问题同时也希望能帮助到广大网友 1.自定义tooltip title样式: 官方给出的案例是这样说的: 我想实现的效果: 很明显,我希望在标

    2024年02月09日
    浏览(29)
  • echarts散点图自定义tooltip,鼠标放上去展示多行数据

    先放效果图 如图,就是鼠标悬停在散点上(这里的散点我替换成了图片,具体做法参考这篇文章:echarts散点图的散点用自定义图片替代-CSDN博客)时,可以展示多行数据。之前查找资料的时候,很多用字符串模板的,即{a}{b}{c}之类的,但是经过实践之后发现这种方法对于散点

    2024年04月24日
    浏览(29)
  • Echarts图表如何利用formatter自定义tooltip的内容和样式

    在展示多数据图表的时候 有的时候需要图例也展示出一些内容来,例如官方这样子:鼠标悬停的时候展示该点数据 但是,官方提供的样式有时不适用所有的开发场景 我的项目需要实现鼠标悬停在某一点的时候,只展示该条线的数据,以及一些图表中未表现的数据。参照原型

    2024年02月01日
    浏览(30)
  • uniapp 如何使用echarts 以及解决tooltip自定义不生效问题

    使用的是echarts-for-wx插件; 正常写法案例:给tooltip数值加个% 这样的写法formatter自定义是不会生效的; 想要自定义生效的正确写法 顺带提一嘴在开发工具上看会有echarts层级太高遮挡显示层问题;这个问题不必理会,真机上显示是正常的 再使用dataZoom组件的时候会报错e.prev

    2024年01月15日
    浏览(50)
  • 详解:当鼠标放上echarts图形时,显示数据、名称,或者自定义tooltip弹窗

     主要知识点:tooltip{}该配置项为:提示框组件相关设置 写入代码的位置如下,tooltip与xAxis同级 效果一实现代码 效果二实现代码: 更加灵活的自定义弹窗,可以自己写html,其中 params[0].marker 是柱形颜色的圆形,其他参数可以打印 params查看一下 然后拼接进html里 写入代码的位

    2024年02月11日
    浏览(29)
  • vue echarts kline 在tooltip trigger: ‘axis‘时 自定义参数名已经加振幅参数

    1 trigger: \\\'axis\\\' 报错 Cannot read properties of undefined (reading \\\'1\\\') TypeError: Cannot read properties of undefined (reading \\\'1\\\') at formatter (webpack-internal:///./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/HelloWorld.vue?vuetype=scriptlang=js:3

    2024年02月13日
    浏览(37)
  • JavaScript到底应不应该加分号?JavaScript自动插入分号规则详解

    JavaScript 提供了 automatic semicolon insertion (ASI)自动插入分号规则,在不加分号的情况下,会自动补充分号来分隔不同语句。 导致在继左大括号换行、tab 和 space 圣战后,前端又出现了一场战争。 并且随着那个男人加入这场讨论之后,关于是否应该加分号的讨论更是激烈了。 在决

    2024年01月18日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包