首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

d3从入门到出门

前言 基于d3js 5.5版本基础教程 环境配置 下载最新d3js文件, 参考: d3js官网 当前版本5.5, d3js v4与v3之间的api有一定的差异。...选择元素 d3主要有两个选择器 select 选择相应的dom元素, 如果有多个, 选择第一个 selectAll 选择所有的指定的dom元素....示例: d3.select("p").text("段落一修改后的内容") // 将段落一的内容修改为text函数传入的参数,如果传入的文本包含html标签,则会被转义 html 修改元素内容...示例: d3.select("p").html("段落一修改后的内容") // 将段落一的内容修改为text函数传入的参数,如果传入的文本包含html标签,不会被转义 属性增加修改...函数里面加入一个g元素,并创建坐标轴 svg.append("g") .call(x_axis); 坐标轴微调 //旋转坐标轴文字 d3.selectAll("svg > g text")

3K20

vue中v-on支持的事件总结

paste 从剪贴板复制的文本内容被粘贴。 键盘事件 Event Name Fired When keydown 按下任意按键。...拖放事件 Event Name Fired When drag 正在拖动元素或文本选区(在此过程中持续触发,每 350ms 触发一次) dragend 拖放操作结束。...(松开鼠标按钮或按下 Esc 键) dragenter 被拖动的元素或文本选区移入有效释放目标区 dragstart 用户开始拖动HTML元素或选中的文本 dragleave 被拖动的元素或文本选区移出有效释放目标区...dragover 被拖动的元素或文本选区正在有效释放目标上被拖动 (在此过程中持续触发,每350ms触发一次) drop 元素在有效释放目标区上释放 Event Name Fired When audioprocess...HTML5 A dragged element or text selection leaves a valid drop target. dragover DragEvent HTML5 An element

3400
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    H5新增的特性及语义化标签

    意思是:在画布上绘制 150×75 的矩形,从左上角开始 (0,0)。...SVG 基于 XML,这意味着 SVG DOM 中的每个元素都是可用的。您可以为某个元素附加 JavaScript 事件处理器。   在 SVG 中,每个被绘制的图形均被视为对象。...在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放。   拖放的过程分为源对象和目标对象。源对象是指你即将拖动元素,而目标对象则是指拖动之后要放置的目标位置。...*1 拖放的目标对象(不会发生移动)可以触发的事件——4个: dragenter:拖动着进入 dragover:拖动着悬停 dragleave:拖动着离开 drop:释放 整个拖动过程的组成1: dragenter...*1 + dragover*n + dragleave*1 整个拖动过程的组成2: dragenter*1 + dragover*n + drop*1 dataTransfer:用于数据传递的“拖拉机”

    2.4K30

    html5鼠标拖动排序及resize实现方案分析及实践

    而HTML5中直接提供了拖放的API,只要通过监听元素的拖放事件就能实现各种拖放功能。 拖放(Drag和 drop)是 HTML5 标准的组成部分。...e.preventDefault(); 如果drop接收盒子要想接收到元素,那么接收的拖动元素 dragenter和dragover必须阻止默认行为。...text/uri-list 注:如果给定类型的数据不存在,则将其添加到拖动数据存储的末尾,使得dataTransfer.types列表中的最后一个项目将是新类型。...此功能可用于将文件从用户桌面拖动到浏览器。一般配合FileReader来处理文件。...画布元素位置与尺寸调整 可以先回顾下《再谈BOM和DOM(6):dom对象及event对象位值计算—如offsetX/Top,clentX》 如果使用mouse事件控制,就显得非常复杂。

    3.1K10

    SVG的动态之美-搜狗地铁图重构散记

    如下: 重构模块化架构; 删除冗余逻辑和文件; 规范并尽量减少第三方库&工具的使用; 使用Vue作为View层框架,尽量减少直接操作DOM; 规范构建&发布流程,完善工程体系。...旧版地铁图的核心问题 旧版的搜狗地铁图虽然也是使用SVG绘制UI,但是并没有将SVG的动态优势发挥出来,而是将其视为静态的图片。图1是旧版地铁的DOM结构: ?...抛开大量的计算和DOM操作不谈,从视觉上表现如图4所示: ? 为什么气泡和起终点等节点没有同比例缩放?因为这些节点不是矢量的SVG,缩放会失真。...有了handler节点的辅助,缩放操作进行中(请注意是进行中,不包括起始和结束时刻)唯一的计算便是handler的transform,无需将其转换为SVG的transform。...优化方案 针对离线包的构建流程中加入额外的功能,即把每个城市的数据js引用在构建阶段注入到index.html中。如下: ?

    2.2K01

    HTML5 拖放API与Vue.js实战

    拖放 API 将可拖动元素添加到 HTML,使我们可以构建包含可以拖动的具有丰富 UI 元素的 Web 应用。 在本文中我们将用 Vue.js 构建一个简单的看板应用。...将其添加到 public/index.html 的 head 重。...不过还没有向组件添加可拖动功能,因为这只是组件的框架。 创建 AddCard 组件 顾名思义,这个组件将负责创建新卡片并将其添加到列中。...HTML5 拖放 API 是什么? 当用户将鼠标移到可拖动元素上时,拖动操作开始,然后将元素移动到启用拖放的元素上。 再默认情况下,唯一可拖动的 HTML 元素是图像和链接。...可以在开始拖动操作时(调用 dragstart 事件时)将数据添加到拖动数据存储中,并且只能在完成拖放操作后(调用 drop 事件时)才能接收数据。

    4.3K10

    使用JavaScript和D3.js实现数据可视化

    ("svg"); 如果我们现在加载barchart.html到我们的Web浏览器中,我们应该能够使用我们的开发人员工具检查DOM或文档对象模型,并将鼠标悬停在SVG框上。...我们现在将使用该height属性,并将添加一个类似于我们添加到x属性中的函数。让我们通过传递变量开始d和i到function,并返回d。d代表数据点。...添加文本类似于添加上面我们所做的矩形形状。我们需要选择文本,然后将其附加到SVG。我们还将它与我们创建的dataArray联系起​​来。...中再次看到它: 如果将鼠标悬停在DOM中的文本行上,您将看到文本全部位于页面顶部,其中X和Y等于0.我们将使用与我们相同的函数公式修改位置通过添加属性用于矩形。...D3将允许您使用几种不同的数据文件类型: HTML JSON 纯文本 CSV(逗号分隔值) TSV(制表符分隔值) XML 例如,您可以在网站的目录中拥有一个JSON文件,并将其连接到JavaScript

    21.9K30

    前端里的拖拖拽拽了解一下?

    一、HTML5 中的拖放 拖(Drag)和放(Drop)是 HTML5 标准的组成部分,了解掌握之后,举一反三,有助于提升我们在拖拽场景下技术方案的设计能力。...事件 HTML 的 drag & drop 使用了“DOM Event”和从“Mouse Event”继承而来的“drag event” 。...这就涉及到 DataTransfer 对象: DataTransfer 对象用于保存拖动并放下(drag and drop)过程中的数据。...如果该类型的数据不存在,则将其添加到末尾,以便类型列表中的最后一项将是新的格式。如果该类型的数据已经存在,则在相同位置替换现有数据。...2.1 设计实现 结合上述的 Drag & Drop 的事件类型,那么拖拽排序主要是针对“拖动对象”之间相互作用关系的逻辑梳理,此处我们暂且区分为: 源对象: 拖拽列表中被拖动的单个列表项 目标对象:

    5K30

    web前端学习:HTML5十个新特性

    Canvas与SVG的不同: (1)Canvas是位图;SVG是矢量图 (2)Canvas是JS绘图技术(不是DOM元素);SVG是标签绘图技术(是DOM元素) (3)Canvas内容不能使用CSS;SVG...(7)文本 ? (8)图像 ?            扩展小知识: ?...drag:拖动中                     dragend:拖动结束  拖动的目标对象(target)可能触发的事件:                     dragenter:拖动进入...                    dragover:拖动悬停                     drop:松手释放                     dragleave:拖动离开            ...问题:若浏览器加载了一个很耗时的JS文件(可能影响DOM树结构),浏览器必须等待该文件执行完成才会继续执行后续的代码(HTML/CSS/JS等)——如果一个JS文件要执行10s(可能有很深的循环/递归等科学计算

    2.9K10

    HTML5 新特性_CSS3新特性

    一.HTML5概念: 1.什么是HTML5: (1)HTML5 将成为 HTML、XHTML 以及 HTML DOM 的新标准; (2)HTML5 仍处于完善之中。...,即抓取对象以后拖到另一个位置 (2)在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放 2.拖动相关设置: (1)设置元素为可拖放: 首先,为了使元素可拖动,把 draggable 属性设置为...: (1)SVG 图像可通过文本编辑器来创建和修改 (2)SVG 图像可被搜索、索引、脚本化或压缩 (3)SVG 是可伸缩的 (4)SVG 图像可在任何的分辨率下被高质量地打印 (5)SVG 可在图像质量不下降的情况下被放大...> html> 八.Canvas vs SVG: 1.SVG: (1)SVG 是一种使用 XML 描述 2D 图形的语言 (2)SVG 基于 XML,这意味着 SVG DOM 中的每个元素都是可用的...如需终止 web worker,并释放浏览器/计算机资源,请使用 terminate() 方法: w.terminate(); 3.Web Workers 和 DOM: 由于 web worker

    5.5K30

    最好的JavaScript数据可视化库都在这里了

    D3js ? star 数:80K D3.js 可能是最流行和使用最广泛的 JavaScript 数据可视化库。D3 用于基于数据的文档操作,并使用 HTML、SVG 和 CSS 让数据活起来。...它基于 Web 标准,结合现代浏览器,不需要与专有框架耦合,将可视化组件和数据驱动的方法结合到 DOM 操作上。它允许你将任意数据绑定到文档对象模型(DOM),然后在文档上应用数据转换。...该库使用 SVG W3C 和 VML 作为创建图形的基础,因此每个图形对象也是 DOM 对象,你可以附加 JavaScript 事件处理程序。...你可以通过 Web 表单上传地理空间数据(Shapefiles、GeoJSON 等),并在数据集或地图上将其可视化,使用 SQL 进行搜索,并使用 CartoCSS 来应用地图样式。...它可以处理表格数据(电子表格和 CSV)和从其他应用程序复制和粘贴的文本。因为是 SVG 格式,所以可以使用矢量图形编辑器编辑,或直接嵌入到网页中。

    4.2K20

    drag事件详解:html5鼠标拖动排序及resize实现方案分析及实践

    而HTML5中直接提供了拖放的API,只要通过监听元素的拖放事件就能实现各种拖放功能。拖放API阐释拖放(Drag和 drop)是 HTML5 标准的组成部分。...true: 可以拖动false: 禁止拖动auto: 跟随浏览器定义是否可以拖动在HTML5标准中 文本、图片和链接是默认可以拖放的,它们的draggable属性自动被设置成了true。...event.dataTransfer.setData('text/plain', 'hello world')存入的数据类型,共有4种:text/plaintext/htmltext/xmltext/uri-list注:如果给定类型的数据不存在,则将其添加到拖动数据存储的末尾...从拖动目标(dragstart事件触发的元素)生成半透明图像,并在拖动过程中跟随鼠标指针。这个图片是自动创建的,你不需要自己去创建它。...此功能可用于将文件从用户桌面拖动到浏览器。一般配合FileReader来处理文件。

    6.5K21

    使用 React-DnD 打造简易低代码平台

    是通过 HTML5 Drag and Drop API 下面是简单实现代码 function dragstart_handler(ev) { // A将目标元素的 id 添加到数据传输对象...(ev) { ev.preventDefault(); // 获取目标的 id 并将已移动的元素添加到目标的 DOM 中 const data = ev.dataTransfer.getData(...> 更高级的功能是: Drop API 还支持直接从系统桌面直接拖拽文件到浏览器中,使用 DataTransfer.files 实现拖拽上传。...'Release to drop' : 'Drag a box here'} ); }; type 与拖动的 type 相同 drop 函数返回放置节点的数据,返回数据给 drag...当每次拖动的时候,可以生成一个 uuid,然后使用深度优先遍历树数据 从根节点到叶子节点的由上至下的深度优先遍历树数据。

    6.2K20

    D3库实践笔记之图表交互 |可视化系列36

    点击后是变成非加粗文本,也就是点击会切换加粗和正常文本两种效果; // var svg=d3.select("body").append("svg") 等等 svg.append("text").attr...,也就是触摸有选中并拖动的效果。...d3力导向图拖动效果 悬停文本标签 要实现鼠标悬停在图形元素上时显示其标签的tooltip效果,仍然使用选择集的on监听mouseover和mouseout事件,只是把响应的代码从修改选定的rect元素变成了增加文本标签元素...d3状态条改颜色 可视化结果输出 d3绘制的图像是svg或canvas对象,要将生成的可视化结果导出可以选择直接复制svg节点数据,从DOM里直接复制 SVG 代码,然后粘贴到文本文件里,命名为chart.svg...而如果只需要图片,就可以直接用截图工具截图保存,例如在写这些笔记时,自己大部分图片都是直接截图的,部分svg图形在DOM里直接复制出来粘到文本文件里。

    5.4K00
    领券