- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在执行缩放时让 D3 执行正确刷牙时遇到问题。
我在这里创建了一个 jsFiddle http://jsfiddle.net/Gwp25/2/用我在别处找到的一些虚拟数据显示网络。接下来的操作是这样的。放大(使用鼠标滚轮),然后打开刷。这样做后,刷节点。选择的节点关闭 - 一些在画笔区域之外。这是处理在画笔范围内选择节点的代码的相关部分。
.on("brush", function() {
var extent = d3.event.target.extent();
console.log(extent);
d3.selectAll(".node").select("circle").classed("selected", function(d) {
return d.selected = (extent[0][0] <= x_scale(d.x) && x_scale(d.x) < extent[1][0]
&& extent[0][1] <= d3.tran(d.y) && y_scale(d.y) < extent[1][1]);
});
})
最佳答案
我相信我有您正在寻找的工作版本:http://jsfiddle.net/Gwp25/8/
你已经接近实现了。我将解释我为使其工作所做的更改。
首先,我在 zoom
上附加了秤功能。这很重要,因为 d3 会在您放大和缩小时自动更新它们。重要的是要注意我没有使用你的身份量表。如果您使用标识比例 d3 缩放行为将不会更新比例。以下是我创建的比例尺,在没有缩放时与您的相同:
var x_scale = d3.scale.linear().domain([0, chartWidth]).range([0, chartWidth]);
var y_scale = d3.scale.linear().domain([0, chartHeight]).range([0, chartHeight]);
brush
也将尺度作为参数。这是您错误地放置原始身份秤的地方。因此,即使图形被缩放和平移,您也使用相同的比例将点映射到新缩放的图形。
brush
正确的比例,您可以通过调用访问缩放行为的比例:
zoom.x()
或
zoom.y()
.
toggleBrushing
中访问您的缩放功能通过使其成为全局变量。我不建议保持这种方式,但我不想进行大量重构。祝你好运,希望有帮助!
关于d3.js - 在 d3 力有向图中缩放和刷亮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20894777/
在这个 fiddle 上,函数完美地完成了工作,但我需要稍微调整连接。 该点击甚至需要是父 div 的 addClass(深色/浅色)(true 或 false)。 如果是深色,则添加 Bright
我正在使用 Windows.UI.ViewManagement.UISettings 来获取系统强调色,但该类似乎没有任何亮/暗模式的方法或属性。我找不到此功能的文档,我该如何检测? PS:我正在制作
在使用 iOS 13 在明暗模式之间切换时,我遇到了显示键盘的异常行为。 该 View 有一个 inputAccessoryView 供用户输入消息。当然后在键盘显示的情况下切换亮/暗模式时,亮/暗模
我正在开发一个支持多个主题的 iOS 应用程序。有些主题使用深色背景,有些使用浅色。一些默认图标在深色/浅色背景中不可见。我在 xcassets 中看到一个选项,可以为不同的颜色模式添加图像。我的目标
一些上下文:Sciter (纯 win32 应用程序)已经能够呈现类似 UWP 的 UI: 在深色模式下: 在灯光模式下: Windows 10.1803 在设置小程序中引入深色/浅色开关 as se
我是一名优秀的程序员,十分优秀!