Javascript 一致图形绘制

Javascript 一致图形绘制,javascript,jquery,graph,graph-theory,Javascript,Jquery,Graph,Graph Theory,是否有Javascript库可以在浏览器中生成一致的图形(如图论风格的图形) 所谓一致性,我的意思是,给定一组输入(即节点和边的配置),它会生成一个唯一的图形(相同的方向和相同的节点位置)。大多数图形布局算法(除了网格布局或Reingold-Tilford树布局等完全确定的算法)使用某种随机初始化。由于无法在Javascript中显式设置随机数生成器的种子,因此很难强制图形布局算法成为完全确定的。您最好的选择可能是使用Javascript中现有的库来绘制图形(如d3.js),并替换对Math.r

是否有Javascript库可以在浏览器中生成一致的图形(如图论风格的图形)


所谓一致性,我的意思是,给定一组输入(即节点和边的配置),它会生成一个唯一的图形(相同的方向和相同的节点位置)。

大多数图形布局算法(除了网格布局或Reingold-Tilford树布局等完全确定的算法)使用某种随机初始化。由于无法在Javascript中显式设置随机数生成器的种子,因此很难强制图形布局算法成为完全确定的。您最好的选择可能是使用Javascript中现有的库来绘制图形(如d3.js),并替换对
Math.random
的调用,类似于基于Javascript的纯随机数生成器,您可以显式设置种子。然后,将种子设置为相同的值应确保每次运行算法时为相同的图形生成相同的布局


可以找到Javascript随机数生成器的实现,或者。

大多数图形布局算法(除了网格布局或Reingold-Tilford树布局等完全确定的算法)使用某种随机初始化。由于无法在Javascript中显式设置随机数生成器的种子,因此很难强制图形布局算法成为完全确定的。您最好的选择可能是使用Javascript中现有的库来绘制图形(如d3.js),并替换对
Math.random
的调用,类似于基于Javascript的纯随机数生成器,您可以显式设置种子。然后,将种子设置为相同的值应确保每次运行算法时为相同的图形生成相同的布局


可以找到Javascript随机数生成器的实现,或者。

哪个Javascript库不能生成一致的图形?我遗漏了什么吗?@meetamit,看看这个例子,如果你点击“重画”按钮(假设输入是相同的),它会给你相同图形的不同图形。使用Javascript绘图对我来说是新事物,但我使用的其他一些工具(如Mathematica)绘图不一致。哪个Javascript库不能生成一致的图形绘图?我遗漏了什么吗?@meetamit,看看这个例子,如果你点击“重画”按钮(假设输入是相同的),它会给你相同图形的不同图形。使用Javascript绘图对我来说是新事物,但我使用过的其他一些工具(例如Mathematica)并没有始终如一地绘图。你在这个答案上击败了我-+1谢谢,我已经将它添加到了我的答案中。你在这个答案上击败了我-+1谢谢,我已经将它添加到了我的答案中。