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 相关文章推荐
JavaScript效率调优经验
Jun 04 Javascript
Prototype Selector对象学习
Jul 23 Javascript
基于jQuery选择器的整理集合
Apr 26 Javascript
js 获取浏览器版本以此来调整CSS的样式
Jun 03 Javascript
jquery实现焦点图片随机切换效果的方法
Mar 12 Javascript
jquery实现移动端点击图片查看大图特效
Sep 11 Javascript
Bootstrap基本组件学习笔记之导航(10)
Dec 07 Javascript
javascript  删除select中的所有option的实例
Sep 17 Javascript
vue-cli开发时,关于ajax跨域的解决方法(推荐)
Feb 03 Javascript
详解javascript 变量提升(Hoisting)
Mar 12 Javascript
基于Vue插入视频的2种方法小结
Apr 02 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
Sep 24 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
Symfony2学习笔记之控制器用法详解
2016/03/17 PHP
php使用PDO下exec()函数查询执行后受影响行数的方法
2017/03/28 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
Javascript创建Silverlight Plugin以及自定义nonSilverlight和lowSilverlight样式
2010/06/28 Javascript
使用Firebug对js进行断点调试的图文方法
2011/04/02 Javascript
九种js弹出对话框的方法总结
2013/03/12 Javascript
js模仿windows桌面图标排列算法具体实现(附图)
2013/06/16 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
Mac/Windows下如何安装Node.js
2013/11/22 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
2014/10/23 Javascript
基于JavaScript实现TAB标签效果
2016/01/12 Javascript
浅析js绑定事件的常用方法
2016/05/15 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
轻松理解JavaScript闭包
2017/03/14 Javascript
基于input框覆盖掉数字英文的实例讲解
2017/07/21 Javascript
vue弹窗插件实战代码
2018/09/08 Javascript
如何使用electron-builder及electron-updater给项目配置自动更新
2018/12/24 Javascript
Vue组件化开发之通用型弹出框的实现
2020/02/28 Javascript
《javascript设计模式》学习笔记七:Javascript面向对象程序设计组合模式详解
2020/04/08 Javascript
基于Element封装一个表格组件tableList的使用方法
2020/06/29 Javascript
[49:05]OG vs Newbee 2019DOTA2国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
基于python编写的微博应用
2014/10/17 Python
numpy数组拼接简单示例
2017/12/15 Python
Django中ORM外键和表的关系详解
2019/05/20 Python
python networkx 根据图的权重画图实现
2019/07/10 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
2020/03/06 Python
德国富尔达运动鞋店:43einhalb
2020/12/25 全球购物
2014年关于两会精神的心得体会
2014/03/17 职场文书
出国留学计划书
2014/04/27 职场文书
《陈毅探母》教学反思
2014/05/01 职场文书
机械专业求职信范文
2014/07/15 职场文书
2014年审计工作总结
2014/11/17 职场文书
2014年林业工作总结
2014/12/05 职场文书
食堂采购员岗位职责
2015/04/03 职场文书
Android实现获取短信验证码并自动填充
2023/05/21 Java/Android