数学建模-day3


title: 数学建模-day3
date: 2018-10-07 23:07:14
tags: 数模
categories: 数学建模
img: https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1538991809564&di=a39e2aa7ff59c221d0a9c52ddd984c8c&imgtype=0&src=http%3A%2F%2Fwww.leewiart.com%2Fuserfiles%2F18573%2F1756b215a1834ac2a831020e54884853.jpg


数学建模_day3 - matlab 基本用法

        day3 继续 day2的 matlab 基本用法学习,今天学习数学模型绘图,matlab的绘图功能十分强大,各种功能如下图。

5bbaf8f1ec8e8.png

六. 根据条件构建二维图和三维图像

plot 函数 -- 二维

      创建二维线图首先需要构建一个二维的函数,比如常见的 y = sin(x),y = 2*x,y = 2^x。

      可以通过以下代码定义y = sin(x)函数:

x = -100:10:100;    //创建一个-100到100步长为10的一维数组用来作为X
y = sin(x);         //构成函数 y = sin(x)

成品图如下

![](https://i.loli.net/2018/10/08/5bbae75ed9328.png)

      因为步长的关系造成了这张图片的狰狞,不过没关系,我们可以改一下x的范围:

x = 0:pi/100:2*pi; //改成单位圆范围
y = sin(x); 
plot(x,y)

成品图如下

5bbae85f7aa9f.png

surf 和 mesh 函数 -- 三维

      三维图通常显示一个由带两个变量的函数(即 z = f (x,y))定义的曲面图。 surf 函数及其伴随函数 mesh 以三维形式显示曲面图。surf 使用颜色显示曲面图的连接线和面。mesh 生成仅以颜色标记连接定义点的线条的线框曲面图。

      例如在三维坐标系中,构建一个 Z=1,-1<x<1,-1<y<1,的平面,我们要输入以下代码:

x = -1:0.1:1;y = x;
z = ones(21,21);
mesh(x,y,z);

成品图如下

5bbaf6e837e65.png

      exp函数,例如exp(5)代表的是e^5。要计算 z,请首先使用 meshgrid 在将要创建的三维函数的域中创建一组 (x,y) 点。 :

[X,Y] = meshgrid(-2:.2:2);  //创建(x,y)点
Z = X .* exp(-X.^2 - Y.^2); //得到Z
surf(X,Y,Z);                //画图

成品图如下

5bbaf9b2535a5.png

cylinder 和 subplot 函数

      cylinder通常用于生成圆柱模型并返回x,y,z坐标值,subplot通常用于分割窗口用以显示不同的图形。

Matlab cylinder 函数:
  1、cylinder函数功能说明:绘制三维圆柱图。
  2、cylinder函数用法说明:
  (1)[x,y,z]=cylinder 函数返回一半径和高度都为1的圆柱体x,y,z轴的坐标值,圆柱体沿其周长有20个等距分布的点;
  (2)[x,y,z]=cylinder(r) 函数一个半径为r、高度为1的圆柱体的x,y,z轴的坐标值,圆柱体沿其周长有20个等距分布的点;
  (3)[x,y,z]=cylinder(r,n) 函数一个半径为r、高度为1的圆柱体的x,y,z轴的坐标值,圆柱体沿其周长有n个等距分布的点;
  (4)cylinder(...) 函数只绘制圆柱,没有任何的输出参量。其他参量及结果同上。

      用一个例子来展示一下cylinder和subplot的用法:

t = 0:pi/10:2*pi;
[X,Y,Z] = cylinder(2+cos(t));
surf(X,Y,Z)
subplot(2,2,1); mesh(X); title('X');
subplot(2,2,2); mesh(Y); title('Y');
subplot(2,2,3); mesh(Z); title('Z');
subplot(2,2,4); mesh(X,Y,Z); title('X,Y,Z');

成品图如下

5bbafba7df128.png

转载于:https://www.cnblogs.com/yof3ng/p/9769541.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值