ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

G2Plot Tooltip 自定义头部、尾部、辅助线

2022-01-04 11:58:37  阅读:497  来源: 互联网

标签:G2Plot style 自定义 title time 辅助线 num Tooltip team


image.png

<template>
  <!-- 图表 -->
  <div id="Line1"></div>
</template>

<script>
// 导入
import { Line } from '@antv/g2plot'
export default {
  mounted () {
    // 数据源
    const dataSource = [
      {
        title: '1998年5月',
        team: '三水集团',
        time: '1998',
        num: 500
      },
      {
        title: '1999年5月',
        team: '三水集团',
        time: '1999',
        num: 400
      },
      {
        title: '2021年5月',
        team: '三水集团',
        time: '2021',
        num: 1000
      },
      {
        title: '1998年6月',
        team: '笑笑集团啊',
        time: '1998',
        num: 1000
      },
      {
        title: '1999年6月',
        team: '笑笑集团啊',
        time: '1999',
        num: 100
      },
      {
        title: '2021年6月',
        team: '笑笑集团啊',
        time: '2021',
        num: 500
      }
    ]
    // 创建
    const line = new Line('Line1', {
      // 数据源
      data: dataSource,
      // x轴对应key,横向线
      xField: 'time',
      // y轴对应key,竖向线
      yField: 'num',
      // 分组对应 key,多组数据
      seriesField: 'team',
      // 线条是否为弧度
      smooth: true,
      // x轴配置
      xAxis: {},
      // 提示
      tooltip: {
        // 标题,设置的值,如果为字段key,则会从数据源中取值显示,如果数据源没有该key,则直接显示
        title: 'title',
        // 自定义,class 必须跟官方的样式一致
        containerTpl: `
          <div class="g2-tooltip">
            <!-- 标题容器,会自己填充 -->
            <div class="g2-tooltip-title"></div>
            <!-- 自定义头部,可以随便写 -->
            <div class="g2-tooltip-title">自定义头部</div>
            <!-- 列表容器,会自己填充 -->
            <ul class="g2-tooltip-list"></ul>
            <!-- 自定义尾部,可以随便写,这里是复用列表容器中的一行 item -->
            <li class="g2-tooltip-list-item">
              <span class="g2-tooltip-marker"></span>
              <span class="g2-tooltip-name">自定义尾部</span>:
              <span class="g2-tooltip-value">100000</span>
            </li>
          </div>
        `,
        // 自定义列表 item 模板,class 必须跟官方的样式一致
        itemTpl: `
          <li class="g2-tooltip-list-item">
            <span class="g2-tooltip-marker" style="background-color: {color};"></span>
            <span class="g2-tooltip-name">{name}</span>:
            <span class="g2-tooltip-value">{value}</span>
          </li>
        `,
        // 允许鼠标滑入,这个开启是为了方便获取 tooltip 的 class,无需要可以关闭。
        enterable: true,
        // 是否显示 hover 辅助线
        showCrosshairs: true,
        // 辅助线配置
        crosshairs: {
          // x 表示 x 轴上的辅助线,y 表示 y 轴上的辅助线,xy 表示两条辅助线
          type: 'x',
          // 辅助线是否跟随鼠标移动
          follow: false,
          // 辅助线配置
          line: {
            // 样式配置
            style: {
              // 线宽
              lineWidth: 10
            }
          }
        }
      },
      // 图例列表
      legend: {
        // y轴偏移
        offsetY: 15,
        // 摆放位置
        position: 'bottom',
        // 图例高度
        itemHeight: 28,
        // 配置图例
        marker: {
          // 图例样式
          style: (style) => {
            // 重组样式
            return {
              // 半径
              r: 6,
              // 样式类型
              symbol: 'square',
              // 填充
              fill: style.fill || style.stroke,
              // 边框线宽
              lineWidth: 1,
              // 边框填充颜色
              stroke: style.fill || style.stroke,
              // 边框透明度
              strokeOpacity: 1,
              // 线圆角
              lineCap: 'round',
              lineJoin: 'round'
            }
          }
        }
      },
      // 主题配置
      theme: {
        // 分类个数小于 10 时使用
        colors10: ['#A685FF', '#FBD86D']
        // 分类个数大于 10 时使用
        // colors20: ['#A685FF', '#FBD86D']
      },
      // 动画配置
      // https://g2plot.antv.vision/zh/docs/api/options/animation
      animation: {
        // 配置图表第一次加载时的入场动画
        appear: {
          // 动画效果
          animation: 'wave-in',
          // 动画执行时间
          duration: 2000
        }
      }
    })
    // 绘制
    line.render()
    // 更新配置
    // line.update({ xField: 'num' })
    // 更新数据
    // line.changeData(dataSource)
    // 销毁
    // line.destroy()
  }
}
</script>

标签:G2Plot,style,自定义,title,time,辅助线,num,Tooltip,team
来源: https://blog.csdn.net/zz00008888/article/details/122299906

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有