
Matlab画图及GUI总结
**图(figure)通常是轴(axes)**的父对象。 轴(axes)可以包含多个图形对象(图形元素),如图像、光、线条等。 图形对象可以进一步包含其他组合对象,如UI控件(uicontrol),以实现更复杂的交互功能。
发布日期:2025-04-12 09:34:17
浏览次数:11
分类:精选文章
本文共 2663 字,大约阅读时间需要 8 分钟。
图形对象在MATLAB中具有高度的嵌套结构,这种结构使得开发更复杂的图形应用成为可能。在大多数情况下,线条的父对象是轴(axes),而图像则通常由图(figure)作为父对象。这种层级结构类似于现实世界中的层级关系,例如房屋的楼层结构或文件夹的嵌套关系。
关系结构解析
在图形绘制中,各个对象之间存在明确的父子关系。具体来说:
图形对象的创建与配置
1. 图对象(figure)的创建
handle.figure = figure('PropertyName','PropertyValue', ...);
- color:可选值包括'y','b','r','k','g','w','c','m',或使用RGB数组。
- menubar:可选值为'none'或{figure},用于设置图形菜单栏。
- name:设置图形的名称,通常用于标识不同图形。
- numbertitle:设置图形标题是否显示编号,值为'on'或'off'。
- position:设置图形在父容器中的绝对位置,格式为[left, bottom, width, height]。
2. UI控件(uicontrol)的创建
handle.uicontrol = uicontrol(parent,'PropertyName','PropertyValue', ...);
- backgroundcolor:颜色属性,可选值与图形对象一致。
- callback:设置控件事件处理函数。
- fontname:设置字体名称。
- fontsize:设置字体大小,单位为点数。
- foregroundcolor:设置文本颜色。
- horizontalalignment:设置水平对齐方式,可选值包括'left'、'{center}'或'right'。
- position:设置控件的绝对位置,格式为[left, bottom, width, height]。
- string:设置控件的显示文本,支持列表框和弹出菜单项。
- style:设置控件类型,可选值包括'pushbutton'、'togglebutton'、'radiobutton'、'checkbox'、'edit'、'text'、'slider'、'frame'等。
3. 轴(axes)的配置
handle.axes = axes('PropertyName','PropertyValue', ...);
- box:设置轴是否绘制边框,可选值为'on'或'off'。
- Children:设置轴内所有渲染的图形对象的句柄,可见或不可见的都包括。
- color:设置轴背景颜色,值与图形对象一致。
- fontangle:设置标记的字体斜体形式,可选值为'{normal}'、'italic'或'{oblique}'。
- fontname:设置标记的字体名称。
- fontsize:设置标记的字体大小。
- fontunits:设置标记的单位,可选值为'points'、'normalized'、'inches'、'centimeters'或'pixels'。
- fontweight:设置标记的字体加粗状态,可选值为'{normal}'、'bold'、'light'或'demi'。
- gridlinestyle:设置坐标轴的网格线样式,可选值为'-'、'--'、'{:}'或'-.'。
- linewidth:设置坐标轴线宽度,单位为点数。
- minorgridlinestyle:设置坐标轴次网格线样式,可选值与gridlinestyle相同。
- parent:设置轴的父容器,通常为图形或UI面板的句柄。
- position:设置轴的绝对位置,格式为[left, bottom, width, height]。
- tickdir:设置标记方向,可选值为'in'或'out'。
- ticklength:设置标记长度,值为2D或3D长度数组。
- title:设置轴的标题句柄,也可以通过句柄设置标题属性。
- units:设置标记的单位,可选值为'inches'、'centimeters'、'normalized'、'points'、'pixels'或'characters'。
- xaxeslocation:设置x轴的位置,可选值为'top'或'{bottom}'。
- yaxeslocation:设置y轴的位置,可选值为'{left}'或'right'。
- xcolor, ycolor, zcolor:设置坐标轴线、标记及标签的颜色。
- xdir, ydir, zdir:设置标记方向,可选值为'{normal}'或'reverse'。
- xgrid, ygrid, zgrid:设置坐标轴网格状态,可选值为'on'或'off'。
- xlabel, ylabel, zlabel:设置坐标轴标签的句柄。
- xlim, ylim, zlim:设置坐标轴的范围,格式为[min, max]。
- xminorgrid, yminorgrid, zminorgrid:设置坐标轴次网格状态,可选值为'on'或'off'。
- xminortick, yminortick, zminortick:设置坐标轴次网格标记状态,可选值为'on'或'off'。
- xscale, yscale, zscale:设置坐标轴的比例尺,可选值为'linear'或'log'。
- xtick, ytick, ztick:设置坐标轴标记位置,值为数据向量。
- xticklabel, yticklabel, zticklabel:设置坐标轴标记标签,可通过字符串数组或其他格式设置。
同步缩放坐标轴
在复杂的图形绘制中,linkaxes命令可以将多个坐标轴绑定,使其缩放同步。通过linkaxes,可以实现以下功能:
linkaxes('PropertyName','PropertyValue', ...);
- X、Y轴同步:
linkaxes('x','y')
。 - X轴单独同步:
linkaxes('x')
。 - Y轴单独同步:
linkaxes('y')
。 - Z轴同步(适用于3D图形):
linkaxes('z')
。
通过linkaxes,可以实现多个坐标轴同步缩放,提升图形的整体可读性和一致性。
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年05月16日 06时39分12秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
llm 从0开始学习大语言模型, transformer架构学习
2025-04-11
LLM;超越记忆《第 2 部分 》
2025-04-11
LLVM 简介-ChatGPT4o作答
2025-04-11
LNMP配置优化
2025-04-11
localhost:5000在MacOS V12(蒙特利)中不可用
2025-04-11
localStorage使用总结
2025-04-11
Lock 锁底层实现
2025-04-11
Lock和synchronized区别(以及Lock的使用)
2025-04-11
Locust性能测试 —— 环境搭建及使用
2025-04-11
Log4j.xml和Log4j2.xml的简单认识 - log4j2/log4j的区别
2025-04-11
Log4j2 中format增加自定义的参数
2025-04-11
log4j分离日志输出 自定义过滤 自定义日志文件
2025-04-11
log4j框架搭建
2025-04-11
Log4J的配置
2025-04-11
log4j补充
2025-04-11
Log4j输出到控制台成功,写入文件失败 - Log4j和commons log的整合
2025-04-11
Logback configuration error detected:D:\log\exchange-platform\info.2021-07-27.log (系统找不到指定的路径。)
2025-04-11
logback.xml 配置详解(1)
2025-04-11
logback.xml配置
2025-04-11