MATLAB二维绘图(三)操作绘图句柄显示特定的效果
预备知识:
在MATLAB中绘图用到的所有元素都是有唯一的句柄的,通过操作这个句柄可以修改这些元素,如绘图窗口figure的句柄是gcf,绘图中的axes的句柄是gca,这些元素按照一定的等级分布,如axes的父级是figure等。如果需要修改这些元素的属性时,使用set函数,查看元素的属性时使用get函数。
示例:
1、通过set函数修改figure的背景颜色。示例: %% 操作绘图窗口的对象句柄,来控制figure显示的颜色 clear; clc; close all; x = linspace(0, 2*pi, 1000); % 获取均衡的点 y = sin(x); plot(x,y); % 画图 set(gcf, \'Color\', [1 1 1]); % 通过操作gcf句柄来控制figure的颜色显示
效果显示:
使用get函数来查看gcf句柄的属性。通过查看这些属性可以进行相应的修改。示例: %% 使用get函数来获取句柄的属性信息 clear; clc; close all; x = linspace(0, 2*pi, 1000); % 获取均衡的点 y = sin(x); plot(x,y); % 画图 get(gcf) % 在命令行窗口中输出属性信息
效果显示:(只是截取了一部分)
说明:Children属性表示它的下一级元素,显示为axes。
2、通过plot函数获取直线的句柄来修改绘图直线的属性,示例: %% 使用句柄h设置更加多样的曲线 clear; clc; close all; x = linspace(0, 2*pi, 1000); y = sin(x); h = plot(x,y); % 获取句柄h set(h, \'LineStyle\', \'-.\',\'LineWidth\', 7.0, \'Color\', \'g\'); % 设置更加多样的曲线
效果显示:
说明:如果需要修改更多属性,使用get函数查看属性信息,并且修改相应的属性即可。
3、删除元素,使用delete函数可以删除绘图的元素。示例: %% 使用delete删除曲线句柄h,则不会显示曲线 clear; clc; close all; x = linspace(0, 2*pi, 1000); y = sin(x); h = plot(x,y); % 获取句柄h set(h, \'LineStyle\', \'-.\',\'LineWidth\', 7.0, \'Color\', \'g\'); delete(h); % 如果删除了曲线对象,那么就不会有曲线显示了
效果显示:
操作元素句柄修改属性示例:
1、通过操作gca来设置axes坐标的范围。示例: %% 设置曲线的父级axes clear; clc; close all; x = linspace(0, 2*pi, 1000); y = sin(x); h = plot(x,y); % 获取句柄h set(gca, \'XLim\', [0, 2*pi]); % 设置x的范围 set(gca, \'YLim\', [-1.2, 1.2]); % 设置y的范围
效果显示:
2、设定axes控件的字体等信息。示例: clear; clc; close all; x = linspace(0, 2*pi, 1000); y = sin(x); h = plot(x,y); % 获取句柄h set(gca, \'FontName\', \'console\'); % 改变字体 set(gca, \'XTickLabel\', {\'0\', \'p/2\', \'p\', \'3p/2\', \'2p\'}); % 可以显示特定的符号
效果显示: