matlab使用教程(7)—基本画图函数

1.创建绘图

plot 函数具有不同的形式,具体取决于输入参数。
• 如果 y 是向量, plot(y) 会生成 y 元素与 y 元素索引的分段线图。
• 如果有两个向量被指定为参数, plot(x,y) 会生成 yx 的图形。
使用冒号运算符创建从 0 至 2 πx 值向量,计算这些值的正弦,并绘制结果。

x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)


添加轴标签和标题。 xlabel 函数中的字符 \pi 用于创建符号 πtitle 函数中的 FontSize 属性用于增大标题所用的文本大小。

xlabel('x = 0:2\pi')
ylabel('Sine of x')
title('Plot of the Sine Function','FontSize',12)

2绘制多个图形

通过调用一次 plot ,多个 x-y 对组参数会创建多幅图形。MATLAB® 对每条线使用不同的颜色。 例如,下列语句绘制 x 的三个相关函数:

x = 0:pi/100:2*pi;
y = sin(x);
y2 = sin(x-.25);
y3 = sin(x-.5);
plot(x,y,x,y2,x,y3)


legend 函数提供了一种标识各条线的简单方法:

legend('sin(x)','sin(x-.25)','sin(x-.5)')

3指定线型和颜色

使用 plot 命令绘制数据时,可以指定颜色、线型和标记(例如加号或圆圈):

plot(x,y,'color_style_marker')

color_style_marker 包含一至四个字符(包括在单引号中),这些字符根据颜色、线型和标记类型构造而成。例如,

plot(x,y,'r:+')

使用红色点线绘制数据,并在每个数据点处放置一个 + 标记。color_style_marker 由下列元素的组合形式构成。

4绘制线条和标记

如果指定标记类型,但未指定线型,MATLAB 仅使用标记创建图形,而不会创建线条。例如,

plot(x,y,'ks')

在每个数据点绘制黑色正方形,但不会使用线条连接标记。语句

plot(x,y,'r:+')

绘制红色点线,并在每个数据点处放置加号标记。

5在每十个数据点处放置标记

此示例展示如何使用比绘制线条所用的数据点更少的数据点来绘制标记。它使用点线图和标记图(分别采用不同数目的数据点)绘制两次数据图:

x1 = 0:pi/100:2*pi;
x2 = 0:pi/10:2*pi;
plot(x1,sin(x1),'r:',x2,sin(x2),'r+')

6绘制虚数和复数数据

将多个复数值作为参数传递给 plot 时,MATLAB 会忽略虚部,但传递一个复数参数时除外。对于这一特殊情况,该命令是绘制虚部对实部的图的一种快捷方式。因此,

plot(Z)

其中 Z 是复数向量或矩阵,等效于

plot(real(Z),imag(Z))

下列语句将绘制一个具有 20 条边的多边形,并在各顶点处绘制一个小圆圈。

t = 0:pi/10:2*pi;
plot(exp(1i*t),'-o')
axis equal


axis equal 命令使 x 和 y 轴上的各刻度线增量的长度相同,这会使此绘图看起来更加圆润。

7将绘图添加到现有图形中

hold 命令用于将绘图添加到现有图形中。当键入 hold on 时,MATLAB 不会在您发出其他绘图命令时替换现有图形。MATLAB 而会将新图形与当前图形合并在一 起。例如,下列语句首先创建 peaks 函数的曲面图,然后叠加同一函数的等高线图:

[x,y,z] = peaks;
% Create surface plot
surf(x,y,z)
% Remove edge lines a smooth colors
shading interp
% Hold the current graph
hold on
% Add the contour graph to the pcolor graph
contour3(x,y,z,20,'k')
% Return to default
hold off

8图窗窗口

如果尚未创建图窗窗口,绘图函数会自动打开一个新的图窗窗口。如果打开了多个图窗窗口,MATLAB 将使用指定为"当前图窗"(通常为上次使用的图窗)的图窗窗口。
要将现有图窗窗口设置为当前的图窗,请将指针放置在该窗口中并点击鼠标,或者也可以键入

figure(n)

其中 n 是图窗标题栏中的编号。要打开新的图窗窗口并将其作为当前图窗,请键入
figure
9清空图窗以便创建新绘图
如果某图窗已存在,大多数绘图命令会清除轴并使用此图窗创建新绘图。但是,这些命令不会重置图窗属性,例如,背景色或颜色图。如果已在以前的绘图中设置图窗属性,您可以先使用带有 reset 选项的 clf 命令。

clf reset

然后创建新绘图,以便将此图窗的属性恢复为其默认值。

9在一幅图窗中显示多个绘图

subplot 命令用于在同一窗口中显示多个绘图,或者在同一张纸上打印这些绘图。键入以下命令

subplot(m,n,p)

会将图窗窗口划分为由多个小子图组成的 m × n 矩阵,并选择第 p 个子图作为当前绘图。这些绘图沿图窗窗口的第一行进行编号,然后沿第二行进行编号,依此类推。例如,下列语句在图窗窗口的三个子区域绘制数据:

x = 0:pi/20:2*pi;
subplot(3,1,1); plot(sin(x))
subplot(3,1,2); plot(cos(x))
subplot(3,1,3); plot(sin(x).*cos(x))

10控制轴

axis 命令提供了许多用于设置图形的比例、方向和纵横比的选项。

10.1自动改变坐标轴范围和刻度线

默认情况下,MATLAB 查找数据的最大值和最小值,并选择坐标轴范围来覆盖此范围。MATLAB 选择范围和轴刻度线值,以便生成可清楚地显示数据的图形。但是,您可以使用 axisxlimylimzlim 函数来设置您自己的范围。
注意更改一个轴的范围可能会导致其他范围也发生更改,从而更好地表示数据。要禁用自动范围设置,请输入 axis manual 命令。

10.2设置坐标轴范围

axis 命令用于指定您自己的范围:

axis([xmin xmax ymin ymax])

或者对于三维图形,

axis([xmin xmax ymin ymax zmin zmax])

请使用命令

axis auto

重新启用自动范围选择。

10.3设置轴纵横比

axis 命令还可用于指定多种预定义模式。例如,

axis square

使 x 轴和 y 轴的长度相同。

axis equal

使 x 轴和 y 轴上的各个刻度线增量的长度相同。这意味着

plot(exp(1i*(0:pi/10:2*pi)))

(后跟 axis squareaxis equal )会将椭圆形转变为正圆:

axis auto normal

将轴比例恢复为其默认的自动模式。

10.4设置轴可见性

使用 axis 命令可以显示或隐藏轴。

axis on

显示轴。这是默认设置。

axis off

隐藏轴。

10.5设置网格线

grid 命令启用和禁用网格线。语句

grid on

启用网格线,而

grid off

再次禁用网格线。

10.6添加轴标签和标题

此示例展示如何创建图形并增强其显示:
• 定义 x 和 y 轴的范围 ( axis )
• 对 x 和 y 轴添加标签( xlabelylabel
• 添加标题 ( title )
• 在图形中添加文本附注 ( text )
使用 LaTeX 表示法生成数学符号。如需关于在图形中放置箭头、方框和圆圈的信息,请参阅 annotation 函数。

11保存图窗

通过从 文件 菜单中选择 保存来保存图窗。这会将图窗写入到文件,包括属性数据、图窗菜单、uicontrol 和所有注释(即整个窗口)。如果这个图窗以前未被保存过, 另存为对话框则会出现。此对话框提供用于将图窗另存为 .fig 文件或将其导出为图形格式的选项。
如果以前保存过这个图窗,再次使用 保存 会以"静默"方式保存图窗,而 另存为 对话框不会出现。
要使用标准图形格式(例如,TIFF 或 JPG)保存图窗以便用于其他应用程序,请从 文件 菜单中选择 另存为 (如果需要其他控件,则选择 导出设置 )。
注意当指定保存图窗的格式时,下次保存该图窗或新图窗时,将再次使用该文件格式。如果您不希望按以前使用的格式保存,请使用 另存为 ,并确保将 保存类型下拉菜单设置为要写入的文件类型。也可通过以下命令行进行保存:
• 使用 savefig 函数将图窗及其包含的图形对象保存为 .fig 文件。
• 使用包含任意选项的 saveas 命令,以各种格式保存图窗。

11.1加载图窗

您可以使用以下函数将图窗加载到 MATLAB:
• 使用 openfig 函数加载保存为 .fig 文件的图窗。
• 使用 imread 函数将标准图形文件(包括保存图窗)读入到 MATLAB 中。

11.2生成 MATLAB 代码以便再建图窗

通过从图窗 文件 菜单中选择 生成代码,可以生成用于再建图窗及其所包含的图形的 MATLAB 代码。如果您已使用绘图工具创建图形,并且希望使用相同或不同数据创建类似图形,此选项尤其有用。

12保存工作区数据

通过从图窗 文件 菜单中选择 将工作区另存为 ,可以保存工作区中的变量。使用图窗 文件 菜单中的 导入数据项可以重新加载保存的数据。MATLAB 支持多种数据文件格式,包括 MATLAB 数据文件,该数据文件的扩展名为 .mat

相关推荐
爱吃喵的鲤鱼6 分钟前
linux进程的状态之环境变量
linux·运维·服务器·开发语言·c++
DARLING Zero two♡33 分钟前
关于我、重生到500年前凭借C语言改变世界科技vlog.16——万字详解指针概念及技巧
c语言·开发语言·科技
Gu Gu Study35 分钟前
【用Java学习数据结构系列】泛型上界与通配符上界
java·开发语言
芊寻(嵌入式)1 小时前
C转C++学习笔记--基础知识摘录总结
开发语言·c++·笔记·学习
一颗松鼠1 小时前
JavaScript 闭包是什么?简单到看完就理解!
开发语言·前端·javascript·ecmascript
有梦想的咸鱼_1 小时前
go实现并发安全hashtable 拉链法
开发语言·golang·哈希算法
海阔天空_20131 小时前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
天下皆白_唯我独黑1 小时前
php 使用qrcode制作二维码图片
开发语言·php
夜雨翦春韭1 小时前
Java中的动态代理
java·开发语言·aop·动态代理
小远yyds1 小时前
前端Web用户 token 持久化
开发语言·前端·javascript·vue.js