このようにJframeを使用してツリーとして表現する必要がある後、JavaでXMLファイルを解析しようとしています。
4 に答える
パスは一般に「マージ」または「クロス」しないため、ツリーは通常、このようにレイアウトするのが簡単なリンク構造の1つです。
ツリーを「左から右」にトラバースすることで、ほぼ表形式でアプローチできます。ルートから開始し、領域の左上にその表現を描画します。次に、その「左」ブランチを一度に1レベルトラバースし、ルートと同じ「列」内の連続して下の「行」にそれらのノードの表現を描画します。次に、「右側」のノードに移動するときに、同じレベルの右側にある次の「列」にそのノードを描画します。これにより、木の構造のランプ状のグラフが作成されます。
各レベルのレベルとノードの数の事前分析を追加できます。これにより、グラフに必要なレベルの最大数とノードの数を知ることで、ツリーを大まかなピラミッド形状に「中央揃え」できます。そのグラフの各レベル。ただし、何かを描き始める前に、グラフ全体をトラバースする必要があります。
ツリーのノードを「配置」して、矢印が交差したり重なったりすることなく最小の領域に収まるようにすることに関しては、平均的なSOの答えをはるかに超えるスコープの問題です。
グラフを視覚化するための優れたライブラリがたくさんあります。
オプションのかなり広範なリストは次のとおりです:http ://s6ai.livejournal.com/33969.html
Prefuseは、おそらく美的に類似したものを作成する可能性があります。もちろん、原始的なルートに行き、グラフィックを手動で行うこともできます。XMLからグラフへの変換には、TreeMLReader APIが役立つ場合がありますが、最初にXSLTを使用してXMLをTreeML形式に変換する必要がある場合があります。
画像を印刷するための標準フォームを使用して くださいhttp://www.java-forums.org/awt-swing/6763-how-display-image.html