antv g2plot可视化图表在vue中的使用之四:为图表添加事件

2023-11-09

图表事件event

我们经常会遇到为图表添加事件的需求,无论是对整个图表还是对图表中的某些元素添加事件,包括点击事件、双击事件、鼠标悬停等。

g2plot升级

本文使用g2plot v1版本的仪表盘作为样例。g2plot官网于2020年9月从v1升级至v2,可以在官网https://g2plot.antv.vision/zh右上角进行版本切换,本文使用v1版本的API
https://g2plot-v1.antv.vision/zh/docs/manual/plots/gauge。
另外,本文使用的npm包各版本号见package.json文件。

//package.json
  "dependencies": {
    "@antv/data-set": "^0.11.4",
    "@antv/g2": "^4.0.15",
    "@antv/g2plot": "^1.1.26",
    "animate.css": "^4.1.0",
    "ant-design-vue": "^1.6.2",
    "axios": "^0.19.2",
    "clipboard": "^2.0.6",
    "core-js": "^3.6.5",
    "cors": "^2.8.5",
    "date-fns": "^2.14.0",
    "dayjs": "^1.8.35",
    "enquire.js": "^2.1.6",
    "js-cookie": "^2.2.1",
    "mockjs": "^1.1.0",
    "moment": "^2.27.0",
    "viser-vue": "^2.4.8",
    "vue": "^2.6.11",
    "vue-i18n": "^8.18.2",
    "vue-router": "^3.3.4",
    "vuedraggable": "^2.23.2",
    "vuex": "^3.4.0"
  },

仪表盘Gauge添加点击事件

仪表盘类型

G2Plot 仪表盘分为Gauge (基础仪表盘)、MeterGauge(刻度仪表盘)、FanGauge(扇形仪表盘)三种类型。
(https://g2plot-v1.antv.vision/zh/docs/manual/plots/gauge)
在这里插入图片描述

仪表盘组成

在这里插入图片描述

//src/views/Gauge.vue
<template>
    <div id="Gaugechart"></div>
</template>
<script>
import { Gauge } from '@antv/g2plot'
export default {
  mounted () {

  const gaugePlot = new Gauge('gaugechart',{
    title: {
      visible: true,
      text: '一个仪表盘',
    },
    value: 85,
    min: 0,
    max: 100,
    range: [0, 25, 50, 75, 100],
    color: ['#39B8FF', '#52619B', '#43E089', '#C0EDF3'],
    format: (v) => {
      return v + '%';
    },
    pivot: {
      pointer: {
        style: {
          fill: 'red',
        },
      },
    },
    statistic: {
      visible: true,
      position: ['50%', '100%'],
      text: 85,
      color: '#2e3033',
      size: 40,
    }
    });
    gaugePlot.render();
  }
}
</script>

效果如下:
在这里插入图片描述

仪表盘事件

仪表盘事件包含色带事件、指标卡事件、图表区域事件、标题事件、描述事件等,可在使用文档中查看具体接口。
语法为

events:{
  onRangeClick:(ev)=>{}   //色带点击事件,其他事件查看文档说明
}

本文为整个仪表盘图表添加一个事件,点击仪表盘后跳转到新页面。

<template>
    <div id="gaugechart"></div>
</template>
<script>
import { Gauge  } from '@antv/g2plot'
export default {
  mounted () {

    const gaugePlot = new Gauge('gaugechart',{
    title: {
      visible: true,
      text: '一个仪表盘',
    },
    value: 85,
    min: 0,
    max: 100,
    range: [0, 25, 50, 75, 100],
    color: ['#39B8FF', '#52619B', '#43E089', '#C0EDF3'],
    format: (v) => {
      return v + '%';
    },
    pivot: {
      pointer: {
        style: {
          fill: 'red',
        },
      },
    },
    statistic: {
      visible: true,
      position: ['50%', '100%'],
      text: 85,
      color: '#2e3033',
      size: 40,
    },
    events:{
      onPlotClick: () => {
        this.$router.push({path:'/charts/pie'});
      } 
    }
    });
    gaugePlot.render();
  }
}
</script>

其他

由于v1版本不再维护了,后面还是用v2吧。
如本文对您有帮助,欢迎点赞或评论

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

antv g2plot可视化图表在vue中的使用之四:为图表添加事件 的相关文章

随机推荐

  • 关于智能合约开发的真相

    就像 区块链 AI 和 云 这样的词语一样 智能合约 也是那些得到大量炒作的短语之一 毕竟 没有什么比不通过司法系统而让人们能够相信发生了什么更有意思的了 智能合约的承诺包括 自动 无须信任和公正地执行合约 在合约构建 合约执行和合约执行环
  • 狂神说 Docker笔记

    Docker概述 Docker为什么出现 Docker的思想来自于集装箱 JRE 多个应用 端口冲突 原来都是交叉的 隔离 Docker核心思想 打包装箱 每个箱子是互相隔离的 Docker通过隔离机制 可以将服务器利用到极致 Docker
  • ShardingSphere分库分表2-ShardingJDBC实战

    文章目录 一 ShardingSphere 二 ShardingJDBC实战 1 核心概念 2 测试项目介绍 3 快速实战 4 ShardingJDBC的分片算法 5 ShardingSphere的SQL使用限制 6 分库分表带来的问题 7
  • JAVA四大特征(抽象,封装,继承,多态)

    1 私有属性必须通过一个成员方法去控制和访问私有属性 2 访问控制修饰符 访问级别 访问控制修饰符 同类 同包 子类 不同包 公开 public 受保护 protected 默认 无 私有 private 3 继承 当多个类具有相同的属性
  • Oracle常见错误总结

    最近多次用到Oracle 主要就是导入dmp文件 然后将文件读出来并写进csv文件 在这过程中出现了一系列的问题 每次都几乎让我崩溃 一方面觉得Oracle用起来真麻烦 但是回过头想想 另一方面说明Oracle机制做的好 各种错误都能考虑到
  • MySQL学习笔记--菜鸟开始上路了!

    开篇话 用MySQL有一段时间了 但是发现自己没有系统的对SQL进行过深入学习 从这篇笔记开始对SQL进行系统学习 也希望和我情况一样的伙伴能够一起进步 学习前症状 状态适用 虽然顺利的把数据从库表中取出 但并不清楚它具体是怎样执行的 也不
  • LLVM系列第七章:函数参数Function Arguments

    系列文章目录 LLVM系列第一章 编译LLVM源码 LLVM系列第二章 模块Module LLVM系列第三章 函数Function LLVM系列第四章 逻辑代码块Block LLVM系列第五章 全局变量Global Variable LLV
  • Java 递归方法

    Java 递归方法 1 说明 定义 一个方法体内调用它自己 方法递归是一种隐式的循环 它会重复的执行某段代码 但这种重复执行无须循环控制 递归一定要向着已知的方向递归 否则这种递归就变成了无穷递归 类似于死循环 2 code 举例 publ
  • Redis7之哨兵(九)

    9 1介绍 哨兵巡查监控后台master主机是否故障 如果故障了根据投票数自动将某一个从库转换为新主库 继续对外服务 俗称无人值守运维 作用 监控redis运行状态 包括master和slave 当master down机 能自动将slav
  • VS2019 + Qt5.13 配置

    在安装完VS2019后 再安装Qt5 13选择安装msvc2017模块 再安装qt vsaddin插件 我选的是2 4版本 反正安装最新的也不会错 安装成功后 新建项目 发现问题 Entry Point Not Found 这是因为编译的版
  • python线程池 ThreadPoolExecutor

    python 线程池 ThreadPoolExecutor 实现步骤 代码实现 实现步骤 创建一个最大容纳数量为3的线程池 通过submit提交执行的函数到线程池中 通过done来判断线程是否完成 通过result来获取返回值 代码实现 c
  • VS code “密钥externalConsole已弃用,请改用console“的解决方法

    VS code 密钥 externalConsole 已弃用 请改用 console 的解决方法 原因 externalConsole 是旧版vscode cpp的密钥 决定输出和调试是在内部还是外部 新版vscode密钥已经改为 cons
  • 阿里巴巴Java开发规约插件

    代码规范的重要性 前不久很多公众号都在说因为代码规范性引起的血案 这事吧 我也没有太在意 好像后来证实根本不属实 但是 也说明了一个事情 代码规范真的很重要 附带一下查询的结果 搜索关键字 码农因代码规范 代码规范 真的很重要 很重要 很重
  • 《快速阅读术》优秀读后感范文4000字

    读书是一种很好的学习 学习是为了 学以致用 在寻求 学以致用 的实操的方法时 发现一个关于学习的金字塔模型 这是美国国家训练实验室的一个结论 听讲 阅读 视听和演示为被动学习 内容留存率比较低 不到30 这是为什么读了很多书 99 的内容都
  • pip安装python包时遇到的问题

    在windows 10种使用pip安装greenlet时 遇到下面这样一个错误 通过搜索发现有很多类似的情况发生在安装scrapy twisted等库的时候 看起来时需要一个c 编译器 安装vstudio实在太大了 网上也给出了不少解决方案
  • 什么是软件性能测试

    说到性能测试 想必大家都会有种种困惑 对于性能测试的概念也模糊得很 那么今天就和大家聊一聊什么是性能测试 性能测试其实是通过模拟生产运行的业务压力量和使用场景组合 测试系统的性能是否满足生产性能要求 通俗地说 性能测试就是要在特定的运行条件
  • 中科院分区和JCR分区查询

    本文将讨论中科院分区和JCR分区查询的三种方法 包括可以同时查询的LetPub查询方法 中科院分区的官方查询方法和JCR分区的查询方法 具体内容见正文 附 本所述方法为本人研究总结 在这里以开放交流的心态与大家分享 欢迎留言讨论 通过Let
  • python自动化[poco篇]

    Poco Poco是一款跨平台的自动化测试框架 基于UI控件搜索原理 与基于图像识别的Airtest不同的是 Poco可以使用类似 poco OK click 的方式来获取并操作节点 Poco能帮助我们获取控件的属性信息 操作控件 设置控件
  • 美国研究生院计算机数据科学排名,美国研究生数据科学专业排名

    美国数据科学专业列表 1 哈佛大学 计算科学与工程理学硕士 M S in Computational Science and Engineering 专业排名 1 1 哈佛大学 数据科学理学硕士 Master of Science in D
  • antv g2plot可视化图表在vue中的使用之四:为图表添加事件

    文章目录 图表事件event g2plot升级 仪表盘Gauge添加点击事件 仪表盘类型 仪表盘组成 仪表盘事件 其他 参考资料 图表事件event 我们经常会遇到为图表添加事件的需求 无论是对整个图表还是对图表中的某些元素添加事件 包括点