收藏
回答

使用 ECharts图表组件 导入 echarts 图表发生错误,请问有解决办法吗?

问题类型 插件 AppID 插件版本号 AppID 微信版本 基础库版本
Bug wx1db9e5ab1149ea03 2.1.1 wx32529990113b5821 version 8.0.16 2.0.0

导入 echarts 代码片段

var option;
setTimeout(function () {
    option = {
    legend: {
        top: 15,
        data: ['甲类设备', '乙类设备', '丙类设备', '丁类设备'],
        textStyle: {
        fontSize: 16
        }
    },
    tooltip: {
        trigger: 'axis',
        showContent: false
    },
    title: {
        left: 'left',
        text: '设备故障统计图'
    },
    dataset: {
        source: [
        ['product', '7月', '8月', '9月', '10月', '11月', '12月'],
        ['甲类设备', 10, 8, 14, 21, 13, 9],
        ['乙类设备', 15, 16, 21, 18, 12, 17],
        ['丙类设备', 8, 6, 9, 7, 5, 10],
        ['丁类设备', 11, 13, 16, 18, 20, 19]
        ]
    },
    xAxis: {
        type: 'category',
        name: '日期',
        nameGap: 16,
        nameTextStyle: {
        fontSize: 16
        }
    },
    yAxis: {
        name: '次数',
        nameLocation: 'end',
        nameGap: 20,
        nameTextStyle: {
        fontSize: 16
        },
        gridIndex: 0
    },
    grid: {
        top: '55%',
        bottom: '5%'
    },
    series: [
        {
        type: 'line',
        smooth: true,
        seriesLayoutBy: 'row',
        emphasis: { focus: 'series' }
        },
        {
        type: 'line',
        smooth: true,
        seriesLayoutBy: 'row',
        emphasis: { focus: 'series' }
        },
        {
        type: 'line',
        smooth: true,
        seriesLayoutBy: 'row',
        emphasis: { focus: 'series' }
        },
        {
        type: 'line',
        smooth: true,
        seriesLayoutBy: 'row',
        emphasis: { focus: 'series' }
        },
        {
        type: 'pie',
        id: 'pie',
        radius: '35%',
        center: ['50%', '30%'],
        emphasis: {
            focus: 'self'
        },
        label: {
            formatter: '{b}: {@2012} ({d}%)'
        },
        encode: {
            itemName: 'product',
            value: '2012',
            tooltip: '2012'
        }
        }
    ]
    };
    myChart.on('updateAxisPointer', function (event) {
    const xAxisInfo = event.axesInfo[0];
    if (xAxisInfo) {
        const dimension = xAxisInfo.value + 1;
        myChart.setOption({
        series: {
            id: 'pie',
            label: {
            formatter: '{b}: {@[' + dimension + ']} ({d}%)'
            },
            encode: {
            value: dimension,
            tooltip: dimension
            }
        }
        });
    }
    });
    myChart.setOption(option);
});


option && myChart.setOption(option);


发现报错信息

初步判断问题在

myChart.on('updateAxisPointer'function (event{


里面,但是无法处理,将上面 echarts 代码复制到 https://echarts.apache.org/examples/zh/editor.html?c=line-simple 是可以正常显示的

请问各位有什么好的解决办法吗


回答关注问题邀请回答
收藏

2 个回答

  • 有赞
    有赞
    2021-12-20

    有个ec-canvas/ec-canvas.js文件

    将initByNewWay方法内

    wx.createSelectorQuery().in(this);

    改为

    this.createSelectorQuery().in(this);

    试试

    2021-12-20
    有用
    回复
  • 困难
    困难
    2021-12-16

    怎么引入的?

    echarts官网提供的小程序模板能正常打开吗?

    把官网提供的某个图表代码复制到你的小程序里能运行吗?

    2021-12-16
    有用
    回复 1
登录 后发表内容