关于微信小程序使用echarts的一些问题总结

本文介绍如何在微信小程序中使用ECharts实现数据可视化,包括下载、引入依赖及常见问题解决方法。通过实例展示如何配置图表选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微信小程序中使用echarts

微信小程序的使用方法和一些避雷踩坑的问题,希望能够给大家提供帮助



一、下载小程序版的echarts

下载地址:https://github.com/ecomfe/echarts-for-weixin

二、使用步骤

1.引入项目依赖

将微信小程序版 echarts 从 github 上拉下来后,将文件里的 ec-canvas 文件复制一个到自己项目里,实际就是微信小程序版 echarts 的依赖文件
图片

2.引入库

在使用的 echarts 的页面的 json 文件中引入 echarts ,引入的路径根据自己的项目结构来引入

在全局配置文件 app.json 里引入也可以,这样就全部页面通用,不用一个个页面引入,当多个页面使用 echarts 时,比较方便

在这里插入图片描述
在使用的 echarts 的页面的 js 文件中引入 echarts ,引入的路径根据自己的项目结构来引入
在这里插入图片描述

使用方法

wxml中使用组件<ec-canvas>,id 和 canvas-id 都可以自行命名

<view class="container">
  <ec-canvas id="mychart-dom-bar" canvas-id="mychart-bar" ec="{{ ec }}"></ec-canvas>
</view>

js 代码

关于 option 配置,可自行去官网看文档或者参照示例,https://echarts.apache.org/zh/option.html#title

import * as echarts from '../../ec-canvas/echarts';

const app = getApp();

function initChart(canvas, width, height, dpr) {
  //主要是这个 echarts 的创建
  const chart = echarts.init(canvas, null, {
    width: width,
    height: height,
    devicePixelRatio: dpr // new
  });
  canvas.setChart(chart);
  
  // option 的配置可以根据自己的需求去 echarts 官网查看配置的属性方法
  var option = {
    backgroundColor: "#ffffff",
    series: [{
      label: {
        normal: {
          fontSize: 14
        }
      },
      type: 'pie',
      center: ['50%', '50%'],
      radius: ['20%', '40%'],
      data: [{
        value: 55,
        name: '北京'
      }, {
        value: 20,
        name: '武汉'
      }, {
        value: 10,
        name: '杭州'
      }, {
        value: 20,
        name: '广州'
      }, {
        value: 38,
        name: '上海'
      }]
    }]
  };

  chart.setOption(option);
  return chart;
}

Page({
  data: {
    ec: {
      onInit: initChart
    }
  },

  onReady() {
  }
});

css 代码

.container{
  width: 100%;
  height: 100vw;
}
ec-canvas {
  width: 100%;
  height: 100%;
}

避坑踩雷

  1. 关于引入依赖,引入库,按照官方的使用方法使用后,echarts 图不显示的问题
    解决办法:html在使用 echarts 时,外层包裹着的 view 标签也要设置宽高
    (官方的方法样式里没有设置外层元素的宽高,在官方的示例中又可以显示,这就误导了很多人会掉坑)
    在这里插入图片描述

  2. 关于 devicePixelRatio 的作用
    可以看到官方代码里初始创建 echarts 时,代码如下图,当你设置了 devicePixelRatio 后,echarts的图表在微信开发者工具中看到的 echarts 图表像素是很差的,用手机预览的时候,是很清晰的,当把 devicePixelRatio 去掉后,微信开发者工具中看到的 echarts 图表像素变得很清晰,手机看到的是像素变差了,所以这个应该是根据设备的像素单位来适配图表的像素吧
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值