MATLAB学习笔记(二、绘图基础知识)

一、Basic Plotting

1.some base functions

(1)plot(x, y) : 按照(x, y)坐标绘图
(2)lengend(‘L1’, ‘L2’, ‘L3’, …) : 依次将每个线L1, L2, L3…依次plot在Figure时会很乱,没有标识容易分不清哪条是哪条,使用lengend(‘sin(x)’, ‘cos(x)’, ‘Sigmoid’, ‘Gauss function’)即可出现下面标识:
在这里插入图片描述
注意:plot, legend函数较多,请自行help

2.title and labels

x坐标的标签就用 xlabel
y坐标的标签就用 ylabel
title 就是主题
标签和主题内容均用单引号扩起

在这里插入图片描述
绘出图像——
在这里插入图片描述
tips:
(1)上面 \pi \ 的作用是转义,这样在Figure中xlabel显示的字符就是 “t = 0 to t = 2π”
而不是“t = 0 to t = 2pi”
(2){-x} 注意两边要用 {} 扩起

3.text and anotation

在这里插入图片描述
绘出图像——
在这里插入图片描述
tips:
(1)\int_{0}^{2} x^2\sin(x) dx其实就是下面的数学公式:
0 2 x 2 sin ( x ) d x \int_{0}^{2} x^2\sin(x) dx

分开来看:

 $$  ...   $$  只是一种LaTeX的标识,不用管

\int就是
加上后面的_{a}^{b}就是
a b \int_{a}^{b}

那么结尾处的dx就完成了整个式子

(2)annotation('arrow', 'X', '[0.32, 0.5]', 'Y', '[0.6, 0.4]')
annotation表示注释,'arrow'就是箭头 的意思,前一个'X', '[0.32, 0.5]'两个值分别是开始的x坐标与终点的x坐标,后一个'Y', '[0.6, 0.4]'两个值分别是开始的y坐标与终点y坐标


二、Getting Object Property

方便理解,先给出一段代码作为下面示例代码的开头:

x = linspace(0, 2*pi, 1000);
y = sin(x); plot(x, y);
h = plot(x, y);

4.Setting Axes Limits

下面的 gca 其实是axes 的句柄(handle)

set(gca, 'XLim', [0, 2*pi]);  %改变Figure左右宽度
set(gca, 'YLim', [-1.2, 1.2]);%改变Figure上下宽度

Alternative(与上面等效)

xlim([0, 2*pi]);
ylim([-1.2, 1.2]);

绘出图像——
在这里插入图片描述

5.Setting Font and Tick of Axes

set(gca, 'FontSize', 25);    %改变坐标轴上的字体

set(gca, 'XTick', 0:pi/2:2*pi); %这个是真实定义域
set(gca, 'XTickLabel', 0:90:360);%这个是为标记定义域(比如我们设这是90°-360°)
set(gca, 'XTickLabel', {'0', '\pi/2', '\pi', '3\pi/2', '2\pi'});  %想要跟真实定义域一致还得自己写

绘出图像——
在这里插入图片描述

6.Line Specification

Line Style and width(线的样式和宽度)

set(h, 'LineStyle', '-.', ...
    'LineWidth', 7.0, 'Color', 'g');
%设置线h的样式,宽度,颜色

Alternative

plot(x, y, '-.g', 'LineWidth', 7.0);  
%本句与上一句作用相同,不过是又多plot了一次线(如果两句均有执行则现在有2层线)

绘出图像——
在这里插入图片描述

Try

delete(h)
%消除线h

绘出图像——
在这里插入图片描述

7.Marker Specification

face and edge color of the marker
在这里插入图片描述
tips:

MarkerEdgeColor 指的是标记的外沿颜色(本处为’k’, 黑色)
MarkerFaceColor 指的是标记的内容颜色(本处为’g’, 绿色)
MakerSize 指的是标记的大小

绘出图像——
在这里插入图片描述

8.Multiple Figures

运行左下方代码,可以一次出现两个Figure窗口,如右下方两窗口所示:
在这里插入图片描述
tips:
这样显示多个Figure后,gcf 和 gca 都将指的是当前Figure(即最后一个Figure)的状态;
gcf 返回当前Figure对象的句柄值
补充:
gca 返回当前axes对象的句柄值
gco 返回当前鼠标单击的句柄值,该对象可以是除 root对象 外的任意图形对象

9.Figure Position and Size

用下图来展示left,bottom,width,height 的作用
在这里插入图片描述

10.Several plots in one Figure

如何让多个子图在一个Figure里面显示呢?用 subplot 即可
下图表示图像分布方式,前两个参数 m 和 n 表示这是 m x n 的矩阵图,第三个参数表示该子图 plot 在第几块区域(注意区域顺序也是左->右,上->下)
在这里插入图片描述

然后我们再来追究一下 subplot 的更多用法:
axis normal 正常显示
axis square 使x,y轴表现得一样长
axis equal 使x,y轴的刻度实际一样长
axis equal tight 使x,y轴的刻度实际一样长且贴合我的曲线

注意:第四幅图标记错误,应为 axis equal tight
在这里插入图片描述

11.Control of Grid, Box, and Axis

先给英文定义:
在这里插入图片描述
然后我们看看实际效果:(对比 10.Several plots in one Figure 的图,中间四个不再单独讲解)
(1)gird on 给当前的 Figure 增加网格线
(不知道为啥前三个没变的往上看 8.Multiple Figurestips
在这里插入图片描述
(2)box on 把当前 Figure上和右两条 upperbound 框线去除
在这里插入图片描述

(3)axis off 去除轴线(只留下了绘制的图线)
在这里插入图片描述

12.Saving Figures into Files

可以用 saves 方法存储图像到文件
gcf 前面有介绍说是 Figure 的句柄,formattype 则有下面两种方式存储(Bitmap 和 Vector),且一般情况下推荐Vector方法:
在这里插入图片描述
tips:
想要高解析率或控制 size 和 resolution 时,使用 print 替代 saves.


本笔记多采自YouTubeMATLAB教学视频

猜你喜欢

转载自blog.csdn.net/weixin_43469047/article/details/86671101
今日推荐