当前位置:   article > 正文

原生小程序实现折线图wx-charts(比echars体积小很多)

wx-charts

        因工作需要做折线图,做插件的时候使用echars的定制折线图,但是体积还是太大了,就定制了一个体积就有500kb,所以后来大改,全部改用wx-charts显示折线图,只有40kb左右,做个普通的显示图表还是很不错的选择

实现效果如图:

1.首先下载wx-charts图表,选择我框的这个压缩后的文件就行

2.可以看看wx-charts官网

3.在需要使用图表的pages页面的wxml文件下先定义一个画布,

canvas-id:这个很重要,自己定义个属性值,对应后面的js代码!!!

  1. <view class="mychart-view">
  2. <canvas canvas-id="areaCanvas" disable-scroll="true" class="canvas"></canvas>
  3. </view>

4.在wxss页面给画布添加宽度和高度,我在这边的画布父级添加了宽高,当然你也可以直接给canvas添加宽高,如果不添加宽高可能导致无法正常显示哦

  1. .mychart-view,.mychart-wd{
  2. margin-top: 50rpx;
  3. width: 100%;
  4. height: 520rpx;
  5. }
  6. .canvas{
  7. width: 100%;
  8. height: 100%;
  9. }

5.到了最重要的js代码了!

5.1-首先先把下好的wxcharts-min.js文件放在项目公用的文件夹下,之后导入到需要使用的页面的js文件中,我在这是放在了api的文件,可以自行更改哈~

import wxCharts from '../../api/wxcharts-min'

js文件如下, x轴和y轴数据都是后台反的数据哈,是以['1','2','3']这种格式的,如果想使用静态可以使用这种格式显示哈~,顺便提一嘴,函数要定义在page({})的外面,和page同级,如果page里要调用,可以使用函数名的形式调用echartsdt()

  1. function echartsdt() {
  2. var windowWidth = '',
  3. windowHeight = ''; //定义宽高
  4. try {
  5. var res = wx.getSystemInfoSync(); //试图获取屏幕宽高数据
  6. windowWidth = res.windowWidth / 750 * 650; //以设计图750为主进行比例算换
  7. windowHeight = res.windowWidth / 750 * 500 //以设计图750为主进行比例算换
  8. } catch (e) {
  9. console.error('getSystemInfoSync failed!'); //如果获取失败
  10. }
  11. new wxCharts({
  12. canvasId: 'areaCanvas',
  13. type: 'area',
  14. categories: dateechars,//x轴数据
  15. animation: true,
  16. legend: false,
  17. series: [{
  18. name: '步数',
  19. data: all_walk,//y轴数据
  20. color: '#9ad672' //折线颜色
  21. }],
  22. yAxis: {
  23. title: '步数/步',
  24. min: 0,
  25. gridColor: '#e0e6f1',
  26. type: 'value'
  27. },
  28. xAxis: {},
  29. extra: {
  30. legendTextColor: '#333',
  31. // lineStyle: 'curve'
  32. },
  33. width: windowWidth * 1.1, //图表展示内容宽度
  34. height: windowHeight, //图表展示内容高度
  35. });
  36. }

讲解结束啦~希望对你有所帮助

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/203740
推荐阅读
相关标签
  

闽ICP备14008679号