zoukankan      html  css  js  c++  java
  • 小程序流程图的使用echar

    1.js里面引入

    import * as echarts from '../../images/ec-canvas/echarts'; //引入echarts.js
    2.在json文件里面定义下
      "usingComponents": {
        "ec-canvas": "../../images/ec-canvas/ec-canvas"
      }
    3.在js里面
    定义一个函数把公共的属性抽离出来
    hucuie(zyn,xData, datas,legend,title) {
        zyn.setOption({
          title: {
            text: title,
            x: 'center',
            textStyle:{
           fontSize:12
           }
          },
      
         
      
          tooltip: {
            show: true,
            trigger: 'axis',
            position: function(point, params, dom, rect, size){
              let x = point[0],
                y = point[1],
                viewWidth = size.viewSize[0],
                boxWidth = size.contentSize[0],
                posX = 0;
              if(x + boxWidth > viewWidth){
                posX = x - boxWidth;    
              }else{
                posX = x; 
              }
              return [posX,y];
            },
            label: {
              normal: {
                show: true
              }
            },
            axisPointer: {
              lineStyle: {
                type: 'dashed',
                color: '#00C8C8'
              },
            },

          },


          legend: {
            y: 'top',
            data:  legend,
            textStyle: {
              color: 'black',
              fontSize: 12
            },
            top:"8%"
        
          },
          grid: {
            left: "0%",
            right:  "5%",
            top: "30%",
            containLabel: true
          },
          xAxis: [{
            data: xData,
            type: 'category',
            scale: true,
            nameTextStyle: {
              fontSize: 14
            },
            splitLine: {
              show: false
            },
            label: {
              normal: {
                show: true
              }
            },
          }],
          yAxis: [{
              type: 'value',
              nameTextStyle: {
                fontSize: 14
              },
              splitLine: {
                show: false
              },
              label: {
                normal: {
                  show: true
                }
              },
            },
            {
              nameTextStyle: {
                fontSize: 14
              },
              splitLine: {
                show: false
              }
            }
          ],
          series:datas
        })
      },
    4.定义一个  //getData方法里发送ajax
      getData(e) {
     url: "",
          header: {
            "content-type": "json"
          },
          success: (res) => {
    在方法里面调用这个函数
            this.hucuie(barec1, data6.category, arrs, data6.legend,type+"登记人数" )
     
    }
    }
    5.onload的时候调用getdata
    const App = getApp();
    import * as echarts from '../../images/ec-canvas/echarts'; //引入echarts.js
    var barec1 = null
    var barec2 = null
    var barec3 = null
    var barec4 = null
    var barec5 = null
    var barec6 = null
    var barec7 = null
    let xData = "";
    let line=""
    let jiekoudata = "";
    let  first=""
    let type = "";

    Page({

      /**
       * 页面的初始数据
       */
      data: {
        select: true,
        tihuoWay: '今日',
        xData: "",
        ec1: {
          onInit: function (canvas, width, height) {
            barec1 = echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(barec1);
            return barec1;
          }
        },
        ec2: {
          onInit: function (canvas, width, height) {
            barec2 = echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(barec2);
            return barec2;
          }
        },

        ec3: {
          onInit: function (canvas, width, height) {
            barec3 = echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(barec3);
            return barec3;
          }
        },
        ec4: {
          onInit: function (canvas, width, height) {
            barec4 = echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(barec4);
            return barec4;
          }
        },
        ec5: {
          onInit: function (canvas, width, height) {
            barec5= echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(barec5);
            return barec5;
          }
        },
        ec6: {
          onInit: function (canvas, width, height) {
            barec6 = echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(barec6);
            return barec6;
          }
        },
        ec7: {
          onInit: function (canvas, width, height) {
            barec7= echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(barec7);
            return barec7;
          }
        },

      },
      bindShowMsg() {
        this.setData({
          select: !this.data.select
        })
      },
      mySelect(e) {
        this.type= e.currentTarget.dataset.name, 
          console.log(this.type)
        this.setData({
          tihuoWay: this.type
        })
        this.getData()
      },

      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function (options) {
        this.type = "今日"
      
      },

      /**
       * 生命周期函数--监听页面初次渲染完成
       */
      onReady() {
        setTimeout(this.getData, 500);
      },
      //getData方法里发送ajax
      getData(e) {
        var type = this.type;
        console.log(type)
        console.log(type)
        wx.showLoading({
          title: '加载中...',
        })
        wx.request({
          url: "",
          header: {
            "content-type": "json"
          },
          success: (res) => {
            var data6 = res.data.data.platformOrderPriceBar;
            var pie = res.data.data.feeItemOrderSourcePie;
            console.log(pie)
            console.log(pie)
            line = res.data.data.orgOnlineNumTop5ProvinceBar
            jiekoudata=res
          //第一个图
            var arrs = [];
            for (var i = 0; i < data6.series.length; i++{
              arrs.push({
                name: data6.series[i].name,
                type: 'bar',
                data: data6.series[i].data
              });
            }
      
            this.hucuie(barec1, data6.category, arrs, data6.legend,type+"登记人数" )
            console.log(arrstwo)
             // 第二个图
            var atts = line.value;
            var arrstwo =[{
              name: '麻醉',
              type: 'line',
              smooth: true,
              data: [18, 36, 65, 30, 78, 40, 33]
            }, {
              name: '妇产',
              type: 'line',
              smooth: true,
              data: [12, 100, 51, 35, 70, 30, 300]
            }, {
              name: '儿科',
              type: 'line',
              smooth: true,
              data: [10, 200, 31, 50, 40, 700, 10]
            },
            {
              name: '全科',
              type: 'line',
              smooth: true,
              data: [10, 30, 31, 20, 740, 20, 10]
            }
          ]
            console.log(arrstwo)
            this.hucuie(barec2, ["8:00-9:00","9:00-10:00","10:00-11:00","11:00-1:00"], arrstwo,["麻醉","妇产","儿科","全科"],type+"预约时间段人数")
            // 第三个图
           var arrthree=[{
            type: 'pie',
            center: ['50%', '50%'],
            radius: ['40%', '50%'],
            data:[{
              value: 55,
              name: '高血压'
            }, {
              value: 20,
              name: '内科学'
            }, {
              value: 10,
              name: '外科学'
            }, {
              value: 20,
              name: '主治'
            }, {
              value: 38,
              name: '大内科'
            }],
            label:{            //饼图图形上的文本标签
                      normal:{
                      show:true,
                      position:'inner', //标签的位置
                      textStyle : {
                            fontWeight : 300 ,
                            fontSize :12   //文字的字体大小
                                 },
                                   formatter:'{d}%'                                  
                            }
                    }, 
            }]
        
            this.hucuie(barec3,[], arrthree,["高血压","内科学","外科学","大内科"], type+"已经预约人数占比")
          //  第四个图
           var arrfour=[
            {
              name: '外科',
              type: 'bar',
              label: {
                normal: {
                  show: true,
                  position: 'inside'
                }
              },
              data: [300, 270, 340, 344, 300, 320, 310]
            },
            {
              name: '内科',
              type: 'bar',
              stack: '总量',
              label: {
                normal: {
                  show: true
                }
              },
              data: [120, 102, 141, 174, 190, 250, 220]
            },
         
          ]
          this.hucuie(barec4,[], arrfour,["内科","外科"], type+"限额人数")
            wx.hideLoading();
          },
          fail: function (res) {},
          complete: function (res) {},
        })
      },
      hucuie(zyn,xData, datas,legend,title) {
        zyn.setOption({
          title: {
            text: title,
            x: 'center',
            textStyle:{
           fontSize:12
           }
          },
      
         
      
          tooltip: {
            show: true,
            trigger: 'axis',
            position: function(point, params, dom, rect, size){
              let x = point[0],
                y = point[1],
                viewWidth = size.viewSize[0],
                boxWidth = size.contentSize[0],
                posX = 0;
              if(x + boxWidth > viewWidth){
                posX = x - boxWidth;    
              }else{
                posX = x; 
              }
              return [posX,y];
            },
            label: {
              normal: {
                show: true
              }
            },
            axisPointer: {
              lineStyle: {
                type: 'dashed',
                color: '#00C8C8'
              },
            },

          },


          legend: {
            y: 'top',
            data:  legend,
            textStyle: {
              color: 'black',
              fontSize: 12
            },
            top:"8%"
        
          },
          grid: {
            left: "0%",
            right:  "5%",
            top: "30%",
            containLabel: true
          },
          xAxis: [{
            data: xData,
            type: 'category',
            scale: true,
            nameTextStyle: {
              fontSize: 14
            },
            splitLine: {
              show: false
            },
            label: {
              normal: {
                show: true
              }
            },
          }],
          yAxis: [{
              type: 'value',
              nameTextStyle: {
                fontSize: 14
              },
              splitLine: {
                show: false
              },
              label: {
                normal: {
                  show: true
                }
              },
            },
            {
              nameTextStyle: {
                fontSize: 14
              },
              splitLine: {
                show: false
              }
            }
          ],
          series:datas
        })
      },
    })
  • 相关阅读:
    关于xml中有特珠字符而导致XmlDocument无法Load的处理
    【转载】Session分布式共享 = Session + Redis + Nginx
    jQuery ajax 请求php遍历json数组到table中
    VS2015+MySql+EF6采坑经验总结
    请教如何用ASP.NET实现http://abc.com/orderID这样的URL???
    silverlight chart 折线图 的线颜色如何修改???
    SL 的 DATAGRID中如何加入计算列?
    中软酒店管理系统之会员消费短信提醒工具开发
    enable_shared_from_this
    python,flask,login,login_request
  • 原文地址:https://www.cnblogs.com/xzhce/p/13212922.html
Copyright © 2011-2022 走看看