echarts中series和tooltip地图的注意点

目前在公司做的项目中就是使用的echarts进行地图的展示,遇到一个很奇怪的问题,就是在option的配置下面,formatter获取不到值,如果为字符串是可以正常显示的

         tooltip: {
            trigger: "item",
            formatter: "{b}<br/>{c} (p / km2)",
          },

如果formatter为函数,就会出现值为undefined的情况,具体代码如下:

          tooltip: {
            trigger: "item",
            formatter: function(params) {
              console.log(params, "lllllll");
            },
          },
          series: [
            {
              name: "数据名称",
              type: "map",
              roam: false,
              mapType: mapName,
              selectedMode: "single",
              showLegendSymbol: false,
              visibility: "off",
              // data: this.mapData,
              data: [
                { name: "新疆", value: Math.random()},
                { name: "黑龙江", value: Math.random() },
                { name: "内蒙古", value: Math.random() },
              ],
            },
          ],

以上所有的都是没有问题的,formatter中的参数params的值是从series.data中获取的,最后矛头对准了key和value,在数据中要使用name来匹配数据,一旦name名称对不上,数据就是获取不到的。

匹配之后代码如下,地图上的名称要和echarts渲染的名称相对应:

          tooltip: {
            trigger: "item",
            formatter: function(params) {
              console.log(params, "lllllll");
            },
          },
          series: [
            {
              name: "数据名称",
              type: "map",
              roam: false,
              mapType: mapName,
              selectedMode: "single",
              showLegendSymbol: false,
              visibility: "off",
              // name匹配很重要,标识!!!!
              data: [
                { name: "新疆维吾尔自治区", value: Math.random()},
                { name: "黑龙江省", value: Math.random() },
                { name: "内蒙古自治区", value: Math.random() },
              ],
            },
          ],

在控制台中名称匹配上的数据是这样的,data中是有数据,这样也就可以正确使用tooltip中的fromatter,进行相关内容的展示,在此不赘述。
在这里插入图片描述
如果没有匹配上的话,很自然的数据为undefined。
在这里插入图片描述
总之,刚开始接触echarts,各种细节和小点都很多,要多研究,多动手操作才好。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值