MATLAB 帮助中心
本页翻译不是最新的。点击此处可查看最新英文版本。
绘制树形图
treeplot(p)
treeplot(p,NodeSpec,EdgeSpec)
treeplot(p) 绘制一个或多个指定为父索引行向量的树。p(i) = j 表示节点 j 是节点 i 的父节点,p(i) = 0 表示节点 i 是根节点。
p
p(i) = j
j
i
p(i) = 0
示例
treeplot(p,NodeSpec,EdgeSpec) 设置树形图中节点和边的线型、标记符号和颜色。使用 '' 省略 NodeSpec 或 EdgeSpec 参量。
NodeSpec
EdgeSpec
''
全部折叠
绘制一个包含 7 个节点的二叉树。
指定一个行向量,其中每个元素都包含其父节点的索引。使用值 0 指定根节点。例如,将节点 1 的父节点指定为 2,将节点 2 的父节点指定为 4,将节点 3 的父节点指定为 2,依此类推。
0
1
2
4
3
p = [2 4 2 0 6 4 6]
p = 1×7 2 4 2 0 6 4 6
使用 treeplot 绘制该二叉树。
treeplot
使用 treelayout 函数生成树节点的坐标。添加文本描述以显示树形图中的节点索引。将文本标签放置在对应节点的右侧 0.02 个单位处。
treelayout
0.02
[x,y] = treelayout(p); text(x + 0.02,y,{1,2,3,4,5,6,7})
表示树状结构的另一种方法是使用 digraph 对象。然后,您可以使用 plot 可视化该结构体。
digraph
plot
使用成对指定有向图边 (s,t) 的语法 digraph(s,t) 创建一个 digraph 对象。使用 plot 可视化树。通过将 ShowArrows 选项设置为 false 来隐藏从父节点到子节点的箭头。
(s,t)
digraph(s,t)
ShowArrows
false
g = digraph(p(p~=0),find(p)); plot(g,"ShowArrows",false)
绘制两个树。通过将节点 1 和节点 7 的父索引设置为 0,将它们指定为根节点。对节点使用蓝色圆圈,对边使用具有交叉标记的红色点线。
7
p = [0 1 1 2 3 3 0 7 7]; treeplot(p,'bo','rx:')
父节点的索引,指定为由小于或等于 length(p) 的正整数组成的行向量。
length(p)
如果节点 i 是根节点,则将 p(i) 指定为 0。
p(i)
如果节点 i 有父节点,则将 p(i) 指定为节点 i 的父节点。
数据类型: double
double
节点标记和颜色,指定为包含符号的字符向量或字符串。符号可以按任意顺序显示。您不需要同时指定标记和颜色。例如,如果指定标记并省略颜色,则绘图仅显示默认为红色的标记。
示例: 'ob' 表示蓝色圆形标记
'ob'
'o'
'+'
'*'
'.'
'x'
'_'
'|'
's'
'd'
'^'
'v'
'>'
'<'
'p'
'h'
y
m
c
r
g
b
w
k
边样式、标记和颜色,指定为包含符号的字符向量或字符串。符号可以按任意顺序显示。您不需要同时指定所有三个特征(边样式、标记和颜色)。例如,如果忽略边样式,只指定标记,则绘图只显示标记,不显示线条。
示例: '--or' 是具有圆形标记的红色虚线边
'--or'
-
--
:
-.
或者,使用 graph 和 digraph 对象来处理图和网络算法。您可以使用 plot 可视化网络。
graph
在 R2006a 之前推出
etree | etreeplot | treelayout | graph | digraph
etree
etreeplot
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处