echarts实现折线图的拖拽效果


Posted in Javascript onDecember 19, 2019

使用echarts实现折线图的拖拽,供大家参考,具体内容如下

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <script src="./echarts.js"></script>
</head>
<body>
 <div id="main" style="width: 600px;height:400px;"></div>
 <script type="text/javascript">
 var symbolSize = 20;
 var data = [[15, 0], [-50, 10], [-56.5, 20], [-46.5, 30], [-22.1, 40]];
 var myChart = echarts.init(document.getElementById('main'));
 myChart.setOption({
 # 表示不使用默认的『显示』『隐藏』触发规则。
  tooltip: {
   triggerOn: 'none',
   formatter: function (params) {
    return 'X: ' + params.data[0].toFixed(2) + '<br>Y: ' + params.data[1].toFixed(2);
   }
  },
  xAxis: {
   min: -100,
   max: 80,
   type: 'value',
   axisLine: {onZero: false}
  },
  yAxis: {
   min: -30,
   max: 60,
   type: 'value',
   axisLine: {onZero: false}
  },
  series: [
   {
    id: 'a',
    type: 'line',
    smooth: true,
    symbolSize: symbolSize,
    data: data
   }
  ],
 });
 myChart.setOption({
 #拖拽功能:用 graphic 组件,在每个点上面,覆盖一个隐藏的可拖拽的圆点
  graphic: echarts.util.map(data, function (item, dataIndex) {
   return {
    type: 'circle',
    position: myChart.convertToPixel('grid', item),
    shape: {
     r: symbolSize / 2
    },
    invisible: true,
    draggable: true,
    ondrag: echarts.util.curry(onPointDragging, dataIndex),
    onmousemove: echarts.util.curry(showTooltip, dataIndex),
    onmouseout: echarts.util.curry(hideTooltip, dataIndex),
    z: 100
   };
  })
 });
 window.addEventListener('resize', function () {
  myChart.setOption({
   graphic: echarts.util.map(data, function (item, dataIndex) {
    return {
     position: myChart.convertToPixel('grid', item)
    };
   })
  });
 });
 function showTooltip(dataIndex) {
  myChart.dispatchAction({
   type: 'showTip',
   seriesIndex: 0,
   dataIndex: dataIndex
  });
 }
 function hideTooltip(dataIndex) {
  myChart.dispatchAction({
   type: 'hideTip'
  });
 }
 function onPointDragging(dataIndex, dx, dy) {
  data[dataIndex] = myChart.convertFromPixel('grid', this.position);
  myChart.setOption({
   series: [{
    id: 'a',
    data: data
   }]
  });
 }

</script>
</body>
</html>

echarts实现折线图的拖拽效果

echarts实现折线图的拖拽效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js获取键盘按键响应事件(兼容各浏览器)
May 16 Javascript
在页面中js获取光标/鼠标的坐标及光标的像素坐标
Nov 11 Javascript
你未必知道的JavaScript和CSS交互的5种方法
Apr 02 Javascript
js判断元素是否隐藏的方法
Jun 09 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
Aug 11 Javascript
jQuery 实现自动填充邮箱功能(带下拉提示)
Oct 14 Javascript
js提交form表单,并传递参数的实现方法
May 25 Javascript
jQuery实现产品对比功能附源码下载
Aug 09 Javascript
jQuery联动日历的实例解析
Dec 02 Javascript
jQuery AJAX 方法success()后台传来的4种数据详解
Aug 08 jQuery
jQuery无冲突模式详解
Jan 17 jQuery
详解VUE前端按钮权限控制
Apr 26 Javascript
Vue中使用Lodop插件实现打印功能的简单方法
Dec 19 #Javascript
Echarts实现单条折线可拖拽效果
Dec 19 #Javascript
Webpack设置环境变量的一些误区详解
Dec 19 #Javascript
Echarts实现多条折线可拖拽效果
Dec 19 #Javascript
js判断一个对象是数组(函数)的方法实例
Dec 19 #Javascript
利用JS如何获取form表单数据
Dec 19 #Javascript
在Vue项目中使用Typescript的实现
Dec 19 #Javascript
You might like
建立动态的WML站点(三)
2006/10/09 PHP
php GD绘制24小时柱状图
2008/06/28 PHP
基于curl数据采集之单页面采集函数get_html的使用
2013/04/28 PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
2014/11/08 PHP
javascript中substr,substring,slice.splice的区别说明
2010/11/25 Javascript
为jQuery增加join方法的实现代码
2010/11/28 Javascript
jquery监控数据是否变化(修正版)
2011/04/12 Javascript
js匿名函数的调用示例(形式多种多样)
2014/08/20 Javascript
Javascript 高阶函数使用介绍
2015/06/15 Javascript
jQuery循环遍历子节点并获取值的方法
2016/04/14 Javascript
jQuery如何封装输入框插件
2016/08/19 Javascript
浅谈js控制li标签排序问题 js调用php函数的方法
2016/10/16 Javascript
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
微信小程序开发的四十个技术窍门总结(推荐)
2017/01/23 Javascript
Vuex持久化插件(vuex-persistedstate)解决刷新数据消失的问题
2019/04/16 Javascript
BootstrapValidator实现表单验证功能
2019/11/08 Javascript
uni-app 支持多端第三方地图定位的方法
2020/01/03 Javascript
JavaScript实现串行请求的示例代码
2020/09/14 Javascript
[56:00]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第一局
2016/03/05 DOTA
浅谈机器学习需要的了解的十大算法
2017/12/15 Python
在python中bool函数的取值方法
2018/11/01 Python
几个适合python初学者的简单小程序,看完受益匪浅!(推荐)
2019/04/16 Python
Python实现多态、协议和鸭子类型的代码详解
2019/05/05 Python
详解Python绘图Turtle库
2019/10/12 Python
Python-split()函数实例用法讲解
2020/12/18 Python
基于PyInstaller各参数的含义说明
2021/03/04 Python
地球鞋加拿大官网:Earth Shoes Canada
2020/11/17 全球购物
新领导上任欢迎词
2014/01/13 职场文书
会展策划与管理专业大学生职业生涯规划
2014/02/07 职场文书
捐助倡议书范文
2014/04/15 职场文书
房地产经营管理专业自荐信
2014/09/02 职场文书
2015年科学教研组工作总结
2015/07/22 职场文书
创业计划书之家教中心
2019/09/25 职场文书
golang中的空接口使用详解
2021/03/30 Python
详解thinkphp的Auth类认证
2021/05/28 PHP
python文件与路径操作神器 pathlib
2022/04/01 Python