2016-08-14 55 views
0

我在文本文件中有一个图形的邻接列表表示。例如。如何从邻接表创建图形图像?

0 -> 1, 2 
1 -> 
2 -> 1 
3 -> 1 

我想创建一个从输入文本文件,该图形图像,图形应该是这样的: enter image description here

有没有在Java中使用任何软件或任何其他语言,可以帮助我做到这一点?

+0

看看JUNG(通用网络/图框架) –

回答

1

有一个很好的lib目录来寻找,该Universal Network/Graph Framework

这里一个例子:

enter image description here

public static void main(String[] args) { 
DirectedSparseGraph<String, String> g = new DirectedSparseGraph<>(); 
g.addVertex("0"); 
g.addVertex("1"); 
g.addVertex("2"); 
g.addVertex("3"); 

g.addEdge("Edge1", "0", "1"); 
g.addEdge("Edge2", "0", "2"); 
g.addEdge("Edge3", "2", "1"); 
g.addEdge("Edge4", "3", "1"); 


VisualizationImageServer<String, String> vv = new VisualizationImageServer<>(new CircleLayout<>(g), 
    new Dimension(600, 400)); 

Transformer<String, String> transformer = new Transformer<String, String>() { 
    @Override 
    public String transform(String arg0) { 
    return arg0; 
    } 
}; 
vv.getRenderContext().setVertexLabelTransformer(transformer); 

JFrame frame = new JFrame("My Graph"); 
frame.setLocationRelativeTo(null); 
frame.getContentPane().add(vv); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
frame.pack(); 
frame.setVisible(true); 
} 
+0

喜ΦXocę웃Пepeúpaツ, 非常感谢您的回答。我通过使用JUNG成功创建了一个图表。 – user1642888

+0

很高兴听到... –