d3.js实现图形缩放平移


Posted in Javascript onDecember 19, 2019

本文实例为大家分享了d3.js实现图形缩放平移的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>缩放操作</title>
</head>
<body>
<script src = "d3.js"></script>
<script>
  var width = 400,
      height = 400;
  var circles =[{cx:150,cy:200,r:30},
    {cx:250,cy:200,r:30}]
  var svg = d3.select("body").append("svg")
      .attr("width",width)
      .attr("height",height)
 
 
  //定义缩放函数
  var zoom = d3.behavior.zoom()
      .scaleExtent([1,10])//用于设置最小和最大的缩放比例
      .on("zoom",zoomed)
 
  //绘制
  var g = svg.append("g")
      .call(zoom)
  g.selectAll("circle")
      .data(circles)
      .enter()
      .append("circle")
      .attr("cx", function (d) {
        return d.cx
      })
      .attr("cy", function (d) {
        return d.cy
      })
      .attr("r", function (d) {
        return d.r
      })
      .attr("fill","black")
  function zoomed(){
    g.attr("transform","translate("+d3.event.translate+")scale("+d3.event.scale+")")
  } //d3.event.translate 是平移的坐标值,d3.event.scale 是缩放的值。
</script>
</body>
</html>

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

Javascript 相关文章推荐
用javascript获取地址栏参数
Dec 22 Javascript
js图片处理示例代码
May 12 Javascript
JavaScript异步回调的Promise模式封装实例
Jun 07 Javascript
JavaScript实现简单的数字倒计时
May 15 Javascript
浅谈javascript中onbeforeunload与onunload事件
Dec 10 Javascript
js实现下一页页码效果
Mar 07 Javascript
Bootstrap fileinput文件上传组件使用详解
Jun 06 Javascript
js实现日期显示的一些操作(实例讲解)
Jul 27 Javascript
VUE 3D轮播图封装实现方法
Jul 03 Javascript
Javascript 对象(object)合并操作实例分析
Jul 30 Javascript
对Layer UI 模块化的用法详解
Sep 26 Javascript
Vue 列表页带参数进详情页的操作(router-link)
Nov 13 Javascript
微信小程序批量上传图片到七牛(推荐)
Dec 19 #Javascript
echarts实现折线图的拖拽效果
Dec 19 #Javascript
Vue中使用Lodop插件实现打印功能的简单方法
Dec 19 #Javascript
Echarts实现单条折线可拖拽效果
Dec 19 #Javascript
Webpack设置环境变量的一些误区详解
Dec 19 #Javascript
Echarts实现多条折线可拖拽效果
Dec 19 #Javascript
js判断一个对象是数组(函数)的方法实例
Dec 19 #Javascript
You might like
PHP插入排序实现代码
2013/04/04 PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
2013/04/15 PHP
PHP操作路由器实现方法示例
2019/04/27 PHP
Ext.MessageBox工具类简介
2009/12/10 Javascript
JS打开图片另存为对话框实现代码
2012/12/26 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
javascript原型模式用法实例详解
2015/06/04 Javascript
深入浅析JavaScript中对事件的三种监听方式
2015/09/29 Javascript
使用vue.js编写蓝色拼图小游戏
2017/03/17 Javascript
ReactNative之键盘Keyboard的弹出与消失示例
2017/07/11 Javascript
JavaScript监听手机物理返回键的两种解决方法
2017/08/14 Javascript
JavaScript 保护变量不被随意修改的实现代码
2017/09/27 Javascript
前端html中jQuery实现对文本的搜索功能并把搜索相关内容显示出来
2017/11/14 jQuery
微信jssdk逻辑在vue中的运用详解
2018/11/14 Javascript
JavaScript刷新页面的几种方法总结
2019/03/28 Javascript
[01:03:59]2018DOTA2亚洲邀请赛3月30日 小组赛B组VGJ.T VS Secret
2018/03/31 DOTA
Python语言描述随机梯度下降法
2018/01/04 Python
django admin后台添加导出excel功能示例代码
2019/05/15 Python
Python字典对象实现原理详解
2019/07/01 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
Tensorflow设置显存自适应,显存比例的操作
2020/02/03 Python
Pycharm自动添加文件头注释和函数注释参数的方法
2020/10/23 Python
python中PyQuery库用法分享
2021/01/15 Python
adidas澳大利亚官方网站:adidas Australia
2018/04/15 全球购物
护士思想汇报
2014/01/12 职场文书
优秀女职工事迹材料
2014/02/06 职场文书
自我推荐信范文
2014/05/09 职场文书
项目建议书怎么写
2014/05/15 职场文书
四风问题自查自纠工作情况报告
2014/10/28 职场文书
股权转让协议书
2014/12/07 职场文书
停电调休通知
2015/04/16 职场文书
学校教代会开幕词
2016/03/04 职场文书
如何书写授权委托书?
2019/06/25 职场文书
MySQL 角色(role)功能介绍
2021/04/24 MySQL
PyTorch dropout设置训练和测试模式的实现
2021/05/27 Python