草庐IT

javascript - 设置 D3 力导向图

致尊敬的读者。我是javascript的新手,我遇到过这个问题。我正在尝试实现此力导向图的修改版本:http://mbostock.github.com/d3/ex/force.htmljson数据是从php脚本动态生成的。这个想法是用一种颜色为连接到一个特定节点(在php脚本中定义)的所有线着色,而所有其他线为灰色阴影。我试图通过将json文件中的源变量与php脚本中的变量匹配并在为真时更改颜色来做到这一点,如下所示:varlink=svg.selectAll("line.link").data(json.links).enter().append("line").attr("cla

javascript - 修改 d3 力导向图示例

我是javascript和D3.js的新手,我想了解它们是如何工作的。我一直在玩力导向图的例子:http://bl.ocks.org/mbostock/4062045我想做的是将JSON链接从数组编号更改为节点名称。我正在尝试可视化一个小型网络拓扑,并且我已经设置了节点邻居。这是我想使用的JSON数据:{"nodes":[{"name":"stkbl0001","group":1},{"name":"stkbl0002","group":1},{"name":"stkbl0003","group":1},{"name":"stkbl0004","group":1},{"name":"s

javascript - 使用 d3js 将子元素添加到力导向图中的特定节点

我想根据节点类型向我的节点添加不同的子元素。因此,该节点有一个名为type的属性。所有节点都应该由一个g元素和依赖的子元素组成。我通过使用D3sfilter功能尝试了这个,但是我被卡住了,因为我的代码不是每个节点只添加一次子元素,而是多次添加想要的子元素(相同数量因为我有节点)。所以我想我在选择方面做错了什么。我的图表的节点和链接随时间变化,所以我所做的是首先存储选择,当一个节点被添加到self.nodes时,我调用draw函数(我将省略链接代码)。self.domNodes=this.svg.append('g').attr('class','nodes').selectAll('.

javascript - D3 力导向布局的基础知识

我正在使用d3.js进入令人兴奋的力导向布局世界。我掌握了d3的基础知识,但我无法弄清楚设置力导向布局的基本系统。现在,我正在尝试创建一个简单的布局,其中包含一些漂浮在中心的不相连的气泡。很简单吧!?创建了正确的圆圈,但没有任何反应。编辑:问题似乎是force.nodes()返回初始数据数组。在工作脚本中,force.nodes()返回一个对象数组。这是我的代码:$(function(){varwidth=600,height=400;vardata=[2,5,7,3,4,6,3,6];//createchartvarchart=d3.select('body').append('sv

javascript - 为什么我的 d3 力导向图不显示边?

我使用d3创建了一个简单的力导向图:http://goo.gl/afHTD为什么图形的边缘不显示?这是我的整个HTML文件。当然,您也可以通过在我的链接页面上查看源代码来查看和修改它。它基于d3网站的示例。Force-DirectedLayoutdiv.node{border-radius:6px;width:12px;height:12px;margin:-6px00-6px;position:absolute;}div.link{position:absolute;border-bottom:solid#9991px;height:0;-webkit-transform-origi

javascript - 对于 d3 力导向图,节点、组和值在 JSON 中意味着什么?

我正在尝试创建一个d3力导向图(http://mbostock.github.com/d3/ex/force.html)。这是包含我的数据的简单JSON文件。{"nodes":[{"name":"Node1","group":1},{"name":"Node2","group":1}],"links":[{"source":1,"target":2,"value":2}]}我在同一组中有两个节点。我也在尝试在两个节点之间创建链接。但是,我的页面仍然是空白的(而且我确信除了JSON之外的其他部分都是正确的)。什么是“组”?为什么边同时具有“源”和“目标”——这些值是什么?为什么链接有“值

javascript - d3 力导向布局 - 链接距离优先

在d3中使用力导向布局,如何使链接距离成为优先事项,同时仍保持良好的图形布局?如果我指定动态链接距离,但保留默认费用,我的图形距离会因费用函数而变形一点,不再是准确的距离:但是,如果我删除电荷,图形将如下所示:感谢任何建议! 最佳答案 如果我理解正确,我相信有一个潜在的解决方案。为了使链接距离准确,您需要将电荷和碰撞力设置为零,但正如您的图片所暗示的那样,节点的间距不会考虑其他节点,只是那些它们共享链接的节点和。由于d3.force初始化在叶序排列中没有x,y值的节点,链接和节点将以意想不到的方式聚集。但是,如果在整个模拟过程中施加

javascript - 在 javascript/d3 中具有力导向布局的 Beeswarm 图

这是一个articleoncreatingbeeswarmplotsinR.还有Rpackageforbeeswarmplot.接下来的两张图片说明了该软件包提供的一些可能性:但是,我现在正尝试使用d3.js的力导向布局来实现它.我的计划是让自定义重力将点拉向垂直线及其适当的y值,碰撞检测使点彼此远离。我有asemi-workingprototype:不幸的是,我找不到解决两个问题的方法——我怀疑这两个问题实际上是同一个问题:我的观点一直有重叠,至少有一点重叠。点数累积后,正在进行“洗牌”布局的中心,作为防撞力和“来到中心”部队战斗。我希望这些点能很快就他们应该住在哪里达成一致,并且不

javascript - 如何在 D3 Javascript 中绘制一个简单的力导向图

我正在学习本教程:>http://bl.ocks.org/mbostock/4062045用于在D3Javascript中可视化力定向图。上面的链接也有代码和JSON文件。我有两个问题。节点是如何链接的?以下是链接和节点及其位置的代码:force.on("tick",function(){link.attr("x1",function(d){returnd.source.x;}).attr("y1",function(d){returnd.source.y;}).attr("x2",function(d){returnd.target.x;}).attr("y2",function(d

javascript - D3.js 对力导向图使用什么算法?

我很想知道D3使用什么算法来实现库中的力导向图功能。看完Kobourov'ssummary力导向图的历史让我有点困惑,不知道库中使用的确切算法或方法(算法/启发式的组合)是什么。D3APIreference说Barnes-Hut算法用于计算作用在物体上的电荷,这是一个O(N*log(N))操作。Kobourov的文章提到Quigley-Eades算法和Hu的算法是利用Barnes-Hut的多级算法。D3中是否以某种方式使用了其中之一?APIwiki进一步说Verlet集成用于粒子定位。sourcecode提到了Gauss-Seidel算法,这又在Hu'salgorithm中提到。和Dw