Постройте изображение дерева
treeplot(p)
treeplot(p,nodeSpec,edgeSpec)
treeplot(p)
строит график изображения дерева, заданного вектор родительских указателей, с p(i)
= 0 для корня.
treeplot(p,nodeSpec,edgeSpec)
позволяет использовать необязательные параметры nodeSpec
и edgeSpec
для установки цвета узла или ребра, маркера и LineStyle. Использование ''
для опускания одного или обоих.
Чтобы построить график дерева с 12 узлами, вызовите treeplot
с 12-элементным входным вектором. Индекс каждого элемента в векторе показан рядом с каждым узлом на рисунке ниже. (Эти индексы показаны только для иллюстрации примера; они не являются частью treeplot
выход.)
Чтобы сгенерировать этот график, задайте значение каждого элемента в nodes
вектор к индексу его родительского элемента, (установка нуля для родительского элемента корневого узла).
Узел отмечен 1
на рисунке представлено nodes(1)
в векторе входа, и поскольку это корневой узел, который имеет родительский элемент нуля, вы устанавливаете его значение в ноль:
nodes(1) = 0; % Root node
nodes(2)
и nodes(8)
являются детьми nodes(1)
, поэтому установите эти элементы вектора входа равными 1
:
nodes(2) = 1; nodes(8) = 1;
nodes(5:7)
являются детьми nodes(4)
, поэтому установите эти элементы в 4
:
nodes(5) = 4; nodes(6) = 4; nodes(7) = 4;
Продолжайте таким образом, пока каждый элемент вектора не идентифицирует своего родительского элемента. Для графика, показанного выше, nodes
теперь вектор выглядит следующим образом:
nodes = [0 1 2 2 4 4 4 1 8 8 10 10];
Теперь звоните treeplot
чтобы сгенерировать график:
treeplot(nodes)
etree
| etreeplot
| treelayout