我开始研究图论(我打算在机器学习和/或贝叶斯推理中使用它)。我想在Julia中编码,并找到了包Graphs。但是,如何使用此包创建简单的图形?例如,这一个:
如果我决定如何使用Graphs
创建表示此图形的Julia对象,那将非常有用。它的文档缺少示例,所以我无法开始。
答案 0 :(得分:4)
Julia的Graphs
package有simple_graph
界面,可用于创建此类小图。要手动创建上述图形,以下代码就足够了。
using Graphs
g = simple_graph(4, is_directed=true) # simple_graph(number_of_vertices, is_directed=true|false)
add_edge!(g, 1, 2)
add_edge!(g, 1, 4)
add_edge!(g, 2, 4)
add_edge!(g, 3, 1)
add_edge!(g, 3, 2)
add_edge!(g, 4, 3)
使用手册中的算法的简短示例。
test_cyclic_by_dfs(g)
这是一个基本情节。
julia> plot(g)