我正在尝试解析java中的XML文件,之后我必须使用Jframe将其表示为树
答案 0 :(得分:2)
树通常是更容易链接的构造之一,因为路径通常不会“合并”或“交叉”。
您可以通过以“从左到右”遍历树来以大致表格的方式处理它:从根开始,并在该区域的左上方绘制其表示。然后,一次遍历其“左”分支一级,将这些节点的表示在连续较低的“行”上绘制在与根相同的“列”中。然后,当您移动到“右侧”节点时,在同一级别右侧可用的下一个“列”中绘制该节点。这将生成树形结构的斜坡形图。
您可以添加一些关于每个级别的级别和节点数量的预分析,这将允许您通过了解图形将需要的最大级别数量和数量将树“中心”为粗略的金字塔形状该图的每个级别的节点。但是,这需要在开始绘制任何内容之前遍历整个图形。
至于“安排”一个树的节点,使它们适合最小的区域,没有箭头交叉或重叠,这是一个范围远远超过平均SO答案的问题。
答案 1 :(得分:1)
有许多可视化图形的好库。
以下是一个非常广泛的选项列表:http://s6ai.livejournal.com/33969.html
答案 2 :(得分:0)
Prefuse可能会创造出美学上相似的东西。当然,你可以去原始路线并手动完成图形。对于XML到图形转换,TreeMLReader API可能有一些用处,但是您可能必须首先使用XSLT将XML转换为TreeML格式。
答案 3 :(得分:0)