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的范围
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'}); % 可以显示特定的符号
想了解更多绘图信息,请看下面博文:
三维:
MATLAB三维绘图(五)高级三维绘图
MATLAB三维绘图(四)绘制特殊的三维图
MATLAB三维绘图(三)绘制等值线图
MATLAB三维绘图(二)使用隐函数作三维图
MATLAB三维绘图(一)三维基础绘图
MATLAB三维绘图基础meshgrid函数的用法解析
二维:
MATLAB二维绘图(四)其他特殊的二维绘图函数介绍及用法
MATLAB二维绘图(二)向图中添加标题,坐标轴,图标和文字信息
MATLAB二维绘图(一)使用plot函数进行简单绘图
fill填充函数解析及用法示例