标签: graphviz

可视化GraphViz太大的无向图?

我需要建议来渲染具有178,000个节点和500,000个边缘的无向图.我尝试过Neato,Tulip和Cytoscape.Neato甚至没有近距离接触,Tulip和Cytoscape声称他们可以处理它,但似乎无法做到.(郁金香什么也没做,Cytoscape声称工作,然后停止.)

我只是喜欢一个矢量格式文件(ps或pdf),它具有远程合理的节点布局.

graph-theory graphviz graph-layout

70
推荐指数
5
解决办法
3万
查看次数

点图语言 - 如何制作双向边?

这是我的点图的一个非常简化的例子:

strict digraph graphName {
A->B
B->A
}
Run Code Online (Sandbox Code Playgroud)

这创造了 替代文字

相反,我希望在A和B之间显示一条边,但是有一个双箭头.我知道如何将双箭头作为全局选项:

strict digraph graphName {
  edge [dir="both"]
A->B
B->A
}
Run Code Online (Sandbox Code Playgroud)

但这看起来非常难看,而且我的所有优势都不应该是双头的.

替代文字

如果我对图形进行更多处理并自己检测双引用并用单个边缘替换两条边缘,则看起来没问题.但我宁愿不必做这个额外的步骤

strict digraph graphName {
A->B [dir="both"]
}
Run Code Online (Sandbox Code Playgroud)

替代文字

更好的解决方案?

graph dot graphviz

68
推荐指数
2
解决办法
2万
查看次数

为什么pydot无法在Windows 8中找到GraphViz的可执行文件?

我在Windows 8中安装了GraphViz 2.32,并将C:\ Program Files(x86)\ Graphviz2.32\bin添加到System PATH变量中.仍然pydot无法找到它的可执行文件.

Traceback (most recent call last):
  File "<pyshell#26>", line 1, in <module>
    graph.write_png('example1_graph.png')
  File "build\bdist.win32\egg\pydot.py", line 1809, in <lambda>
    lambda path, f=frmt, prog=self.prog : self.write(path, format=f, prog=prog))
  File "build\bdist.win32\egg\pydot.py", line 1911, in write
    dot_fd.write(self.create(prog, format))
  File "build\bdist.win32\egg\pydot.py", line 1953, in create
    'GraphViz\'s executables not found' )
InvocationException: GraphViz's executables not found
Run Code Online (Sandbox Code Playgroud)

我发现了这个https://code.google.com/p/pydot/issues/detail?id=65但是无法解决问题.

graphviz pygraphviz pydot scikit-learn

66
推荐指数
8
解决办法
13万
查看次数

在GraphViz中制作图例/关键字

我想在GraphViz图表中包含图例或关键字.但是,我无法确定要使用的代码.我也想把它放在一个角落,但我唯一知道的唯一的坐标是左下角:pos="10,10!".

有谁知道我怎么能让这个工作?

legend graphviz

62
推荐指数
4
解决办法
3万
查看次数

Graphviz替代品?

我正在寻找GraphViz的替代品.我已经使用GraphViz十多年了,没关系,但是考虑到我的输入数据,布局并没有为我生成出版品质的图表.有时候我的数据真的很大而且很复杂,有时却不是,但GraphViz从来没有真正做出那些美丽的东西.

人们使用的其他图形可视化工具是什么?理想情况下,有一个使用GraphViz语法的输入文件.

这里举例说明我正在玩的输入文件:

digraph mdc {    
  size="4,8";    
  "KJ1E:A6:PAN:9E:3A" -> "JUNK-0PAN0-FOO";    
  "KJ1E:A6:PAN:9E:3A" -> "JUNK-0047-FOO";    
  "KJ1E:A6:PAN:9E:3A" -> "JUNK-0048-FOO";    
  "KJ1E:A6:PAN:9E:3A" -> "JUNK-0050-FOO";    
  "KJ1E:A6:PAN:9E:3A" -> "JUNK-0051-FOO";    
  "KJ1E:A6:PAN:9E:3A" -> "JUNK-0052-FOO";    
  "KJ1E:A6:PAN:9E:3A" -> "JUNK-0009-FOO";    
  "KJ16:76:A2:60:6E" -> "JUNK-0413-FOO";    
  "KJ16:76:A2:60:6E" -> "JUNK-0414-FOO";    
  "KJE0:D0:13:14:94" -> "GEORGE42-FRED";    
  "KJE0:D0:13:14:94" -> "MY5-30-FRED";    
  "KJ50:04:EE:6C:F9" -> "PSPAN-036-FRED";    
  "KJ50:04:EE:6C:F9" -> "GEORGE02-FRED";    
  "KJ50:04:EE:6C:F9" -> "GEORGE04-FRED";    
  "KJ1B:B9:9B:D5:BB" -> "JUNK-0047-FOO";    
  "KJ1B:B9:9B:D5:BB" -> "JUNK-0048-FOO";    
  "KJ05:5F:EF:14:PAN" -> "thPAN-PAN-FRED";    
  "KJ05:5F:EF:14:PAN" -> "cn20-PAN-FRED";    
  "KJ15:F2-KIM-:E5YF" -> "thPAN-PAN-FRED";    
  "KJ15:F2-KIM-:E5YF" -> "cn20-PAN-FRED";    
  "KJ0E:90:D5:E6:5E" -> "JUNK-0051-FOO";    
  "KJ0E:90:D5:E6:5E" -> "JUNK-0009-FOO";    
  "KJ1E:90:DE:F1:07" -> "JUNK-0051-FOO";    
  "KJ1E:90:DE:F1:07" -> "JUNK-0009-FOO";    
  "KJ1E:90:D5:EE:5E" …
Run Code Online (Sandbox Code Playgroud)

graphviz graph-visualization

62
推荐指数
2
解决办法
3万
查看次数

如何在Mac上打开点

首先,我是MacOS的新手,我想要的是能够看到输出llc -view-dag-combine1-dags sum.ll.在Mac上,llc将在/tmp目录中生成点,并尝试打开App以显示点文件.我试过Graphviz,但它不起作用(程序崩溃).我想尝试别的东西,例如xdot.我安装它brew install xdot,但不知道如何让MacOS使用xdot我刚安装的打开点文件.

或者任何其他更好的工具来查看点文件?我想保持尽可能简单的事情.

macos graphviz

62
推荐指数
3
解决办法
5万
查看次数

Graphviz:更改整个图形的字体?

我想知道我是否可以为整个图形定义替代字体.

...
digraph script_concept {
graph [layout="dot",fontname="helvetica"];
...
Run Code Online (Sandbox Code Playgroud)

根据这个1个较早的帖子的字体名称属性附加伤害只能单独定义:

节点和边缘不继承图形的字体,您需要单独指定它们

还有其他方法,如何全局定义字体?

graphviz

61
推荐指数
2
解决办法
2万
查看次数

缩小graphviz生成的图形的大小(如区域)

有没有人有任何减少graphviz生成的图形大小的一般提示(区域大小,而不是文件大小).

我有一个相当大的图(700个节点).我为每个节点设置了较小的字体大小,但它似乎只减小了字体大小而不是实际的节点大小.是否有任何属性可以减少图表中的总空白量?谢谢!

configuration graphviz graph-drawing image-size

60
推荐指数
1
解决办法
2万
查看次数

Graphviz子图不可视化

我正在尝试创建一个带有两个子图的图形.代码如下:

digraph G {
        subgraph step1 {
                style=filled;
                node [label="Compiler"] step1_Compiler;
                node [label="Maschine"] step1_Maschine;
                color=lightgrey;
        }

        subgraph step2 {
                style=filled;
                color=lightgrey;
                node [label="Interpretierer"] step2_Interpretierer;
                node [label="Maschine"] step2_Maschine;
                label="Virtuelle Maschine";
        }

        "Programm (Java)" -> step1_Compiler;
        step1_Compiler -> step1_Maschine;
        step1_Maschine -> "Bytecode";
        "Bytecode" -> step2_Interpretierer;
        step2_Interpretierer -> step2_Maschine;
        step2_Maschine -> "Ergebnis";
}
Run Code Online (Sandbox Code Playgroud)

我得到的结果如下:

上述代码的结果

我希望两个子图周围都能看到一个方框.我在这里错过了什么?

dot graphviz

56
推荐指数
1
解决办法
2万
查看次数

GraphViz的纯Java重新实现?

是否有GraphViz的开源Java替代品?我知道Grappa的存在,它基本上将Graph接口包装为GraphViz作为JavaAPI.但是,GraphViz二进制文件仍然可以完成布局.

我正在寻找一个纯java,开源库,提供与GraphViz相同的功能和布局算法.

java drawing graphviz graph-visualization

54
推荐指数
4
解决办法
3万
查看次数