分享

9.1 基本二维图形 | MATLAB图像

 小温爱怡宝 2023-07-22 发布于江西

matlab 绘图

本章的目的是向你介绍:

  • MATLAB的高级二维和三维绘图功能
  • 处理图形
  • 编辑图形
  • 动画
  • 保存和导出图形
  • 色彩、灯光和相机

导言

有人说,一幅画胜过千言万语。MATLAB有一个强大的图形系统,用于呈现和可视化数据,它相当容易使用。

需要强调的是,在本章中对图形处理的讨论是必要的简短,目的是让你对MATLAB图形的丰富性和功能有所了解。如果想要全面了解,请查阅本章中提到的函数的帮助文档,以及在点击“?”并在搜索工具中键入“graphics”后打开的帮助文档中的完整图形函数列表。

  • 导言

  • 9.1 基本二维图形

  • 练习

  • 补充 ezplot 函数

9.1 基本二维图形

图形(2d)是用plot语句绘制的。在最简单的形式中,它接受一个向量参数,如plot(y)所示。在这种情况下,y的元素根据它们的索引绘制,例如plot(rand(1,20))根据整数1 - 20绘制20个随机数,用直线连接连续的点,如图所示。如果y是一个矩阵,它的列是根据元素索引绘制的。

轴被自动缩放和绘制,以包含最小和最大数据点。

可能最常见的plot形式是plot(x, y)其中x和y是相同长度的向量,例如:

x = 0:pi/40:4*pi;
plot(x, sin(x))

在这种情况下,第点的坐标是 , 这种情节形式在前面的章节中被广泛使用

直线图是通过在两个向量中给出端点的x和y坐标来绘制的。例如,要在笛卡尔坐标(0,1)和(4,3)的点之间画一条线,使用语句plot([0 4], [1 3])

也就是说,[0 4]包含两点的x坐标,[1 3]包含两点的y坐标。

MATLAB有一组“易于使用”的绘图命令,所有命令都以字符串“ez”开头。易于使用的plot形式是ezplot,例如:ezplot('tan(x)')

练习

在(0,1)、(4,3)、(2,0)和(5,-2)点之间画线

以下是一个简单的示例代码:

x = [0, 4, 2, 5];
y = [1, 3, 0, -2];
plot(x, y);

下面是一些对图形的设置,在之后会讲到。

要在MATLAB中绘制通过给定的点的线,可以使用plot函数。下面是一个演示如何使用MATLAB在点(0,1)、(4,3)、(2,0)和(5,-2)之间画线的示例代码:

% 给定点的坐标
x = [0 4 2 5];
y = [1 3 0 -2];

% 绘制线
plot(x, y, 'b-''LineWidth'2);

% 设置图形的标题和坐标轴标签
title('Line Plot');
xlabel('X');
ylabel('Y');

% 添加网格线
grid on;

在上述代码中,首先定义了四个点的x和y坐标。然后,使用plot函数将这些点连接起来,并指定线条的样式为蓝色实线('b-'),线宽为2 ('LineWidth', 2)。

接下来,使用title函数设置图形的标题为"Line Plot",并使用xlabelylabel函数为坐标轴添加标签。

最后,通过使用grid on命令,将网格线添加到图形中。

运行上述代码,将会在MATLAB中绘制出通过给定的四个点的线形图。你可以根据需要调整点的坐标和其他绘图选项来进行定制。

补充 ezplot 函数

ezplot函数是MATLAB中用于绘制简单的二维函数图形的函数。它可以根据给定的函数表达式自动生成函数的图像。并在指定的范围内绘制函数曲线。

ezplot函数的基本语法如下:

ezplot(expression)
ezplot(expression, [xmin, xmax])
ezplot(expression, [xmin, xmax, ymin, ymax])

在这个语法中,expression是一个表示函数的表达式,可以是一个符号表达式或者一个函数句柄或者字符串。[xmin, xmax][ymin, ymax]是可选参数,用于指定绘图的范围。

以下是一个使用ezplot函数绘制函数y = sin(x)的示例:

ezplot('sin(x)')

在这个示例中,我们使用ezplot函数绘制了函数y = sin(x)的曲线。由于没有指定绘图范围,MATLAB会自动选择合适的范围来显示曲线。

你还可以使用ezplot函数绘制多个函数曲线。以下是一个使用ezplot函数绘制函数y = sin(x)y = cos(x)的示例:

ezplot('sin(x)')
hold on
ezplot('cos(x)')
hold off

在这个示例中,我们首先使用ezplot函数绘制了函数y = sin(x)的曲线。然后,使用hold on命令将图形窗口保持在打开状态,以便绘制下一个函数曲线。最后,使用ezplot函数绘制了函数y = cos(x)的曲线。使用hold off命令将图形窗口关闭,完成绘图。

通过使用ezplot函数,你可以方便地绘制各种函数曲线,并进行可视化分析。

再如:

% 定义函数表达式
expression = 'sin(x) + cos(2*x)';
  
% 运行 ezplot 函数
ezplot(expression)

% 设置图形的标题和坐标轴标签
title('Function Plot');
xlabel('X');
ylabel('Y');

% 添加网格线
grid on;

在上述示例中,我选择了一个简单的函数表达式sin(x) + cos(2*x)来演示。 ezplot函数将根据该表达式绘制图形,并自动确定绘图的区间。你可以根据需要更改函数表达式以绘制不同的函数图像。

最后,使用titlexlabelylabel函数设置图形的标题和坐标轴标签,并通过grid on添加网格线。

运行示例代码后,MATLAB将会生成函数图像并显示在图形窗口中。你可以根据需要调整函数表达式以及其他绘图选项来绘制自己想要的函数图像。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多