草庐IT

无向图

全部标签

ruby-on-rails - 如何在 Ruby on Rails 中实现无向图?

我需要在RubyonRails中实现无向图G=(V,E)并考虑构建一个Vertex和一个Edge模型,其中Vertex有_多条边。由于边恰好连接两个顶点,您将如何在Rails中执行此操作?您是否知道任何有助于实现此类图表的gem或库(对重新发明轮子不感兴趣;-))? 最佳答案 不知道有任何现有库在ActiveRecord之上提供图形逻辑。您可能必须实现自己的Vertex、EdgeActiveRecord支持的模型(请参阅Rails安装的rails/activerecord中的vertex.rb和edge.rb/test/fixtur

javascript - 强制定向图错误, "Cannot Read Property ' Push' of Undefined"

我是编码新手,最近开始使用d3生成力导向图。使用链接派生节点时,我成功生成了一个四节点图。但是,当我明确列出节点时,我收到错误“UncaughtTypeError:Cannotreadproperty'push'ofundefined(d3.v3.min.js)”。我研究了对以下两个类似问题的回答,但无法使用答案解决此问题。我试图尽可能多地删除不相关的功能,谢谢。JavaScripterror"UncaughtTypeError:Cannotcallmethod'push'ofundefined"D3.jsUncaughtTypeError:Cannotcallmethod'push'

javascript - 找不到 D3js 强制定向图链接

我目前正在尝试使用d3jsv4构建力导向图。我有以下节点和链接,其实很简单节点[{"id":"4d2b0275-5bc7-e611-81c4-00155df7ea33"},{"id":"b32b0275-5bc7-e611-81c4-00155df7ea33"}]链接[{"source":"4d2b0275-5bc7-e611-81c4-00155df7ea33","target":"b32b0275-5bc7-e611-81c4-00155df7ea33"}]我的forceSimulation设置是varsimulation=d3.forceSimulation(nodes).for

javascript - d3 力有向图向下力模拟

也许这不是最好的方法,但现在我已经陷入困境,我想知道它是如何工作的。我正在尝试使用d3创建一棵树,节点将向下沉降,就像有重力一样。我希望这个,连同每个节点的电荷和绳索的张力,使它最终看起来像我想象的那样,它会自我平衡。我试图在d3中模拟这种持续向下的加速度,但我是d3的初学者,不知Prop体如何。我也遇到了模拟停止运行的问题,而d3.timer(force.resume)没有帮助。所以本质上,我想让一个根节点像枢轴一样固定在某个位置,子节点从它上面脱落,重力、电荷和张力存在,这样子节点就会自动安定下来并平衡成一个树状结构。 最佳答案

javascript - 在 Web UI 中可视化有向图的建议

我需要可视化表示Web应用程序中数据流的有向图。谁能为此推荐任何JavaScript或Flash解决方案。它必须支持挂接节点单击事件,因为发生这种情况时我需要触发AJAX调用。可以是免费的或商业的。如果这有什么不同的话,服务器端技术就是Java。JProbeCallGraph是我想到的那种东西:(来源:javaworld.com)谢谢! 最佳答案 我喜欢WireIt.它是用JavaScript编写的,用途广泛。并且开源(MITLicense) 关于javascript-在WebUI中可视

javascript - 将 d3 力定向图的节点封闭在圆形、多边形或云中

我已经构建了一个带有分组节点的d3力定向图。我想将这些组封闭在云状结构中。我该怎么做?图表的JsFiddle链接:http://jsfiddle.net/Cfq9J/5/我的结果应该类似于这张图片: 最佳答案 这是一个棘手的问题,我不完全确定您能否以一种表演的方式来解决这个问题。你可以在这里看到我的静态实现:http://jsfiddle.net/nrabinowitz/yPfJH/还有这里的动态实现,虽然它很慢而且不稳定:http://jsfiddle.net/nrabinowitz/9a7yy/实现注意事项:这是通过用其组中的所

javascript - 查找无向图的所有连通分量

我有一个对象列表(无向边),如下所示:pairs=[pair:["a2","a5"],pair:["a3","a6"],pair:["a4","a5"],pair:["a7","a9"]];我需要在单独的组中找到所有组件(连接的节点)。所以从给定的对中我需要得到:groups=[group1:["a2","a5","a4"],group2:["a3","a6"],group3:["a7","a9"]];我实际上在这里阅读了一些答案并用谷歌搜索了这个,这就是我如何了解到这被称为“在图中查找连接的组件”,但是找不到任何示例代码。我在Node.js上使用JavaScript,但任何其他语言的

javascript - 使用 SVG 和 Javascript 的交互式有向图

我必须向SVG有向图添加一些交互功能。到目前为止,我要显示的图表是从点文件生成并呈现为SVG。我想知道是否有一些简单的方法可以向此类SVG文档添加交互性(可能使用Javascript)。我需要的是当鼠标经过一个节点时显示一些信息,并使比较两个节点成为可能。由于我的模型是自动生成的,所以我更愿意保留点生成的SVG,并使用单独的Javascript在其上放置额外的信息。 最佳答案 我有一个内嵌SVG的例子。此SVG与您所拥有的之间的区别在于,我演示中的那个具有节点和事物的id属性。我确实从graphviz网站上得到了这个SVG。Demo

go - 在有向图 Golang 中查找所有循环

我正在尝试使用Golang(或至少几个)生成有向图中包含的所有循环。我目前有两个结构:Node:{ID(string),resolved(bool),edges([]Edge)}Edge:{ID(string),start(Node),end(Node),weight(Float64)}周期重量不是问题(目前)。我找到了一些关于如何检测循环或找到最短路径等的答案,但我没有找到可以完全帮助我的算法。我该如何进行?(欢迎任何建议) 最佳答案 这个问题有两个部分。关于检测图中所有循环的算法,请查看这个相关问题(因为这不是特定于go的),其

c# - 确保部分连接的有向图是强连接的

上下文我正在使用程序生成构建3d游戏。我试图以这样一种方式连接一些预先生成的房间,无论如何,玩家总是可以到达map上的任何其他房间。房间有“可能的入口点”,连接走廊必须连接到这些入口点。但是,并非所有入口点都可以从房间内的所有其他入口点到达。例如,可能存在陷阱,因此位于底部的玩家将无法穿过房间到达顶部,而必须另寻出路。问题给定一组嵌入3d空间中的预先存在的有向图,添加一组总长度最小的(双向)路径,将子图连接成更大的图。否则(因为someresearch表明这是NP-Hard)使路径尽可能短以便在短时间内计算。到目前为止的工作我最好的解决方案是基于thisproceduralgenera