关于echarts添加点击事件,并实现跳转链接

引入echarts

  1. 如何引入Echarts,直接参考官网即可,地址附上:https://www.echartsjs.com/zh/index.html
  2. 我们在官方示例中,随便挑选一个饼图的案例
  3. 以下是代码
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>echarts学习</title>
    <script src="./js/echarts.common.min.js"></script>
  </head>
  <body>
    <div
      id="container"
      style="width: 600px;height:400px;margin:200px auto"
    ></div>
    <script>
      // 基于准备好的dom,初始化echarts实例
      var myChart = echarts.init(document.getElementById("container"));
      // 指定图表的配置项和数据
      var option = {
        title: {
          text: "某站点用户访问来源",
          subtext: "纯属虚构",
          x: "center"
        },
        tooltip: {
          trigger: "item",
          formatter: "{a} <br/>{b} : {c} ({d}%)"
        },
        legend: {
          orient: "vertical",
          left: "left",
          data: ["直接访问", "邮件营销", "联盟广告", "视频广告", "搜索引擎"]
        },
        series: [
          {
            name: "访问来源",
            type: "pie",
            radius: "55%",
            center: ["50%", "50%"],
            data: [
              { value: 335, name: "直接访问" },
              { value: 310, name: "邮件营销" },
              { value: 234, name: "联盟广告" },
              { value: 135, name: "视频广告" },
              { value: 1548, name: "搜索引擎", url: "http://www.baidu.com" }
            ],
            itemStyle: {
              emphasis: {
                shadowBlur: 10,
                shadowOffsetX: 0,
                shadowColor: "rgba(0, 0, 0, 0.5)"
              }
            }
          }
        ]
      };

      // 使用刚指定的配置项和数据显示图表。
      myChart.setOption(option);
      myChart.on("click", function(params) {
        console.log(params);
        if (params.name == "搜索引擎") {
          window.location.href = params.data.url;
        }
      });
    </script>
  </body>
</html>

代码解析

  1. 为echarts添加点击事件,通过.on的方法,详细请看上面代码部分
  2. 跳转链接:通过window.location.href = 'http://www.baidu.com’的方式来跳转
  3. 下图为点击每一项饼图打印出来的params数据,这里我只给搜索引擎添加了一个url属性,下图可以看到params中的data里有一个url属性,跳转到百度的
    在这里插入图片描述

以上就是关于echarts饼图添加点击事件,并且如何跳转链接的全部解答了,如果有什么不对的地方,希望大家能指出来,加油!

  • 7
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是ExtJS整合Echarts实现柱状图,并实现柱状图点事件的示例代码: ```javascript // 定义ExtJS的store var store = Ext.create('Ext.data.Store', { fields: ['name', 'value'], data: [ { name: 'Mon', value: 120 }, { name: 'Tue', value: 200 }, { name: 'Wed', value: 150 }, { name: 'Thu', value: 80 }, { name: 'Fri', value: 70 }, { name: 'Sat', value: 110 }, { name: 'Sun', value: 130 } ] }); // 定义Echarts的option var option = { xAxis: { type: 'category', data: store.collect('name') }, yAxis: { type: 'value' }, series: [{ data: store.collect('value'), type: 'bar' }] }; // 定义ExtJS的panel var panel = Ext.create('Ext.panel.Panel', { width: 600, height: 400, renderTo: Ext.getBody(), layout: 'fit', items: [{ xtype: 'chart', store: store, axes: [{ type: 'numeric', position: 'left', fields: ['value'], title: { text: 'Value', fontSize: 15 }, grid: true }, { type: 'category', position: 'bottom', fields: ['name'], title: { text: 'Name', fontSize: 15 } }], series: [{ type: 'bar', xField: 'name', yField: 'value', listeners: { itemclick: function(series, item, event) { // 点事件处理 console.log(item.record.get('name') + ': ' + item.record.get('value')); } } }] }], listeners: { afterrender: function() { // 渲染Echarts var chart = this.down('chart'); chart.setOption(option); } } }); ``` 在上述代码中,我们首先定义了一个ExtJS的store,用于存储数据。然后定义了Echarts的option,包括x轴、y轴和series。着定义了一个ExtJS的panel,包含一个chart组件,用于显示Echarts图表。在chart组件中,我们定义了x轴、y轴和series,并添加了一个itemclick事件监听器,用于处理柱状图的点事件。最后,在panel的afterrender事件中,我们渲染了Echarts图表。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值