如何使用 QuickGraph C# 呈现我的图形
本文关键字:我的 图形 何使用 QuickGraph | 更新日期: 2023-09-27 18:34:30
我是QuickGraph的新手。我按照文档页面上的示例将顶点和边添加到我的图形中。现在,我想在窗口窗体上显示我的图形。我为此目的使用 Graphviz,它会生成一个 .点文件作为输出。我正在按照下面的代码示例进行渲染:
IVertexAndEdgeListGraph<TVertex,TEdge> g= ...;
var graphviz = new GraphvizAlgorithm<TVertex,TEdge>(g);
string output = graphviz.Generate(new FileDotEngine(), "graph");
但是,我的编译器没有检测到FileDotEngine()
.而且,我不知道之后该怎么办.生成 DOT 文件。
你必须自己提供一个FileDotEngine
;例如,在Github上看到这个例子。生成 jpg 的简单FileDotEngine
可以是:
public sealed class FileDotEngine : IDotEngine
{
public string Run(GraphvizImageType imageType, string dot, string outputFileName)
{
string output = outputFileName;
File.WriteAllText(output, dot);
// assumes dot.exe is on the path:
var args = string.Format(@"{0} -Tjpg -O", output);
System.Diagnostics.Process.Start("dot.exe", args);
return output;
}
}
然后,您可以在图片框或类似框中显示生成的图像。
另一种方法是在 winforms 应用中承载 WPF 控件,然后使用 Graph# 显示图形。但是,我自己还没有尝试过。