1

ノード = [0 1 2 3 4 4 3 7 7 2 10 11 11 10 14 14 1 17 18 19 19 18 22 22 17 25 26 26 25 29 29]; これは深さ 4 の木の標準プロットです。ループになっており、10 回描画されます。さて、これらの 10 回の数値計算のそれぞれが行われ、さまざまな数値が考え出されます。これらの番号はすべて、メイン配列内のいくつかの単語タグを指しています。これらの数字が変わるたびに、索引付けされる単語も変わります。私はそれらがツリーにどのように配置されるかをすでに知っています。これらの文字列でツリーにラベルを付けるにはどうすればよいですか?

一般的な質問は、一連の文字列でツリーにラベルを付ける方法ですか?

4

1 に答える 1

1

ちょっとしたハックは、プロットされたポイントを見て、それらがベクトル内のノードと1対1で対応していると仮定して、それらの座標を使用してテキストをプロットすることです。

treeplot([0 1 1]);  % plot your tree
c = get(gca, 'Children'); % get handles to children
% grab X and Y coords from the second child (the first one is axes)
x = get(c(2), 'XData');
y = get(c(2), 'YData');

これで、これらの座標で何でもプロットできます。がラベルのセル配列である場合labels、次のようにノードの横に表示できます。

text(x, y, labels, 'VerticalAlignment','bottom', ...
                         'HorizontalAlignment','right')
于 2012-04-14T01:47:47.850 に答える