美酒没故事° 2020-07-17 16:04 采纳率: 40.5%
浏览 664
已采纳

vue中echarts柱状图怎么让其中的柱可以拖动?

如图:


vue中echarts柱状图怎么让其中的柱可以拖动?

  • 写回答

2条回答 默认 最新

  • 美酒没故事° 2021-09-26 16:56
    关注

    img

    // 电量调整试算器 - 鼠标事件:拖动
        mouseEvents() {
          let histogram = this.$refs.histogram;
          const that = this;
    
          this.testChart.on("mousedown", function (params) {
            console.log("按下:", params);
            that.moveValue.oldPrice = params.seriesName;
            /* histogram.style.backgroundColor = params.color;
            histogram.style.width = params.event.target.shape.width + "px";
            histogram.style.height = Math.abs(params.event.target.shape.height) + "px"; */
            histogram.style.display = "block";
            histogram.style.top = params.event.offsetY + "px";
            histogram.style.left = params.event.offsetX + "px";
            that.testDialogTitle.start = params.seriesName.slice(0, 1);
            that.testDialogTitle.startBg = params.color;
            that.startMoveIndex = params.seriesIndex + 1;
            if (that.testType === "electric") {
              that.moveValue.electricMax = params.data[params.seriesIndex + 1];
            } else {
              that.moveValue.loadMax = params.data[params.seriesIndex + 1];
              that.moveValue.timeMax = 12; // 赋假数据
            }
          });
          this.testChart.on("mousemove", function (params) {
            // console.log("移动:", params);
            histogram.style.top = params.event.offsetY + "px";
            histogram.style.left = params.event.offsetX + "px";
          });
          this.testChart.on("mouseup", function (params) {
            console.log("松开:", params);
            that.moveValue.nowPrice = params.seriesName;
            that.testDialogTitle.end = params.seriesName.slice(0, 1);
            that.testDialogTitle.endBg = params.color;
            if (that.testDialogTitle.start === params.seriesName.slice(0, 1)) {
              // that.$message.warning("调节错误!");
            } else {
              that.endMoveIndex = params.seriesIndex + 1;
              that.dialogVisible = true;
              that.moveValue.electric = 0;
              that.moveValue.load = 0;
              that.moveValue.time = 0;
            }
            histogram.style.display = "none";
            // let pattern = /[1-9][0-9]*([.][0-9]+)/g;
            that.moveValue.oldPrice = parseFloat(
              that.moveValue.oldPrice.replace(/[^\d.]/g, "")
            );
            that.moveValue.nowPrice = parseFloat(
              that.moveValue.nowPrice.replace(/[^\d.]/g, "")
            );
            console.log(that.moveValue.oldPrice, that.moveValue.nowPrice);
          });
        },
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 9月26日

悬赏问题

  • ¥15 这个有点复杂 有没有人看看
  • ¥15 用python如何确定子元素在父元素中的位置
  • ¥15 obj文件滤除异常高程
  • ¥15 用mathematicas或者matlab计算三重积分
  • ¥15 Loop unrolling的runtime计算
  • ¥100 NVMe-oF的Target端,开启attr_offload后,测试失败。
  • ¥100 有偿照片马赛克去掉,保留原始数据
  • ¥15 c# winform http报错,如何解决?
  • ¥15 统计软件及应用-r软件
  • ¥15 爬虫返回的js数据结构如何处理