MATLAB 图形

本章将继续探讨 MATLAB 的绘图和图形功能。我们将讨论以下内容:

  • 绘制条形图
  • 绘制等高线图
  • 三维绘图

绘制条形图

bar 命令可以绘制二维条形图。让我们举一个例子来演示这个想法。

示例

假设有一个有 10 名学生的虚拟教室。我们知道这些学生获得的成绩百分比分别为 75、58、90、87、50、85、92、75、60 和 95。我们将为这些数据绘制条形图。

创建一个脚本文件并键入以下代码-

x = [1:10];
y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95];
bar(x,y), xlabel('Student'),ylabel('Score'),
title('First Sem::')
print -deps graph.eps

当你运行该文件时,MATLAB 显示以下条形图

matlab 绘制条形图


绘制等高线图

一个函数的等高线是函数取常值的曲线,它被用于通过连接等高点来绘制等高线地图,如平均海平面上方的等高点。

MATLAB 提供了一个 contour 函数来绘制等高线地图。

示例

让我们生成一个等高线地图,显示给定函数 g = f(x,y) 的等高线。这个函数有两个变量。所以,我们将生成两个独立的变量,即,两个数据集 x 和 y。这是通过调用 meshgrid 命令完成的。

meshgrid 命令用于生成一个元素矩阵,该矩阵给出了 x 和 y 上的范围以及每种情况下的增量规定。

让我们绘制我们的函数 g = f(x,y),其中 -5 ≤ x ≤ 5,**-3 ≤ y ≤ 3**。让我们为这两个值都取 0.1 的增量。变量设置为 -

[x,y] = meshgrid(-5:0.1:5, -3:0.1:3);

最后,我们需要分配函数。让我们的函数是:x^2+y^2

创建一个脚本文件并键入以下代码-

[x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %独立变量
g = x.^2 + y.^2; % 我们的函数
contour(x,y,g) % 调用 contour 函数
print -deps graph.eps

当你运行该文件时,MATLAB 显示以下等高线地图

Matlab 的等高线地图

让我们稍微修改一下代码来美化地图

[x,y] = meshgrid(-5:0.1:5,-3:0.1:3);   %独立变量
g = x.^2 + y.^2;                       % 我们的函数
[C, h] = contour(x,y,g);               % 调用 contour 函数
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2)
print -deps graph.eps

当你运行该文件时,MATLAB 会显示以下等高线图

matlab 绘制美化后的等高线图


三维图形绘制

三维图形基本上显示由两个变量的函数定义的表面,即 g = f(x,y)

与之前一样,要定义 g,我们首先使用 meshgrid 命令在函数的定义域上创建一组 (x,y) 点。接下来,我们将函数本身赋值给 g。最后,我们使用 surf 命令创建一个表面图。

以下示例演示了这个概念-

示例

让我们为函数 g = xe-(x2 + y2) 创建一个 3D 表面图。

创建一个脚本文件并键入以下代码 -

[x,y] = meshgrid(-2:.2:2);
g = x .* exp(-x.^2 - y.^2);
surf(x, y, g)
print -deps graph.eps

当你运行该文件时,MATLAB 显示以下 3D 地图

3-D Map in Matlab

我们还可以使用 mesh 命令生成三维表面。但是,surf 命令以彩色显示表面的连接线和面,而 mesh 命令则创建带有连接定义点的彩色线的线框表面。

查看笔记

扫码一下
查看教程更方便