精华内容
下载资源
问答
  • % 3维变2(m,1,n)变成(m,n) a=ones(3,1,2) a(:,:,1)=[1,1,1] a(:,:,2)=[2,2,2]%a是(3,1,2) b=reshape(a,3,2)%把3行1列2页的矩阵,插到列中。形变函数不变转到列的增加。 %3维变2(m,n,1)变成(m,n) a=...

    点赞加关注
    1 3维降到2维

    % 3维变2维(m,1,n)变成(m,n)
    a=ones(3,1,2)
    a(:,:,1)=[1,1,1]
    a(:,:,2)=[2,2,2]%a是(3,1,2)
    b=reshape(a,3,2)%312页的矩阵,插到列中。形变函数不变转到列的增加。
    
    
    %3维变2维(m,n,1)变成(m,n)
    a=ones(3,2,1)
    b=reshape(a,3,2)
    
    

    在这里插入图片描述
    2 2维升到3维

    
    
    %2维扩展到3维(m,n)变成(m,1,n)
    a=[1,2;1,2;1,2]%a是(3,2)
    b=reshape(a,3,1,2);%32列,变成312页。按列叉开放到页中
    
    
    %2维扩展到3维(m,n)变成(m,n,1)
    a=[1,2;1,2;1,2]%a是(3,2)
    b=reshape(a,3,2,1);
    
    展开全文
  • 第2章 MATLAB 基本操作一、定义数组、数组数转换、访问数组元素 1. 用两种方法定义长度为18的向量;2.将1中定义的向量变形为36?的矩阵,并访问该矩阵第1、3、5列的元素;3.将1中定义的向量变形为323??的数组,并...

    MATLAB 练习题

    第1章 MATLAB 简介

    一、熟悉MATLAB 的界面布局和各窗口功能。 二、计算

    1/3sin(1)e +; 2 3.2/3(8)-。

    ea9f14af4e8f58cab9d0ab8d555e1737.png

    065068d86e5695f71f147996f7a6e7c9.png

    第2章 MATLAB 基本操作

    一、定义数组、数组维数转换、访问数组元素 1. 用两种方法定义长度为18的向量;

    2.将1中定义的向量变形为36?的矩阵,并访问该矩阵第1、3、5列的元素;

    3.将1中定义的向量变形为323??的数组,并访问该数组第2行第1列第2页上的元素。

    二、取整运算,排序

    1. 运行命令:x = 20*rand(1,12)-10 定义向量x ; 2.将1中定义的向量x 分别按以下方式取整: (1)四舍五入取整; (2)向-∞方向取整; (3)向+∞方向取整; (4)向0方向取整。 3.将2中四舍五入取整后结果进行排序(从小到大)。

    三、结构体数组、元胞数组

    定义结构体数组和元胞数组,用来存储以下信息:

    b34ad25967f44f8ff47687811d172320.png

    第3章 绘图与可视化

    一、二维图

    1.现有一组儿童成长记录数据(0-7岁),包括月龄、身高和体重的观测数据,如下表所示:

    展开全文
  • 随着美赛的推进,数学建模用到matlab的...1.1.2二维矩阵变三维 1.1.3直接创建三维矩阵 1.2plot库的基础使用 1.2.1plot颜色形状参数等 1.3matlab的数据类型 1.4matlab的绘图 1.4.1线性图的绘制 1.4.2饼图的绘制 1.4.3散

    随着美赛的推进,数学建模用到matlab的越来越多,然而对matlab不熟悉的还很多,在此写下matlab基础篇,一是帮助没有了解过matlab的同学入门,二是帮助自己巩固知识。
    在这里插入图片描述

    时间紧迫,直接开始!此篇文章包括:
    1.1matlab的基础使用
    1.1.1特殊变量和常量
    1.1.2 输出
    1.1.3 matlab command window的基础使用
    1.2matlab矩阵的基础使用
    1.2.1矩阵行列的输入
    1.2.2matlab矩阵索引
    1.2.3快速创建大数组
    1.2.4矩阵的运算
    1.2.5矩阵运算函数
    1.3plot库的基础使用
    1.3.1plot颜色形状参数等
    1.4matlab的数据类型
    1.4.1数值类型
    1.4.2字符和字符串
    1.4.3数据类型之间的转换
    1.4.4单位数组
    1.5matlab的绘图
    1.5.1线性图的绘制
    1.5.2饼图的绘制
    1.5.3散点图的绘制
    1.5.4误差条图
    1.5.5直方图his
    1.5.6复合直方图
    1.5.7多轴图
    1.5.8创建动画

    1.1.1特殊变量和常量

    变量/常量 含义
    ans 最近的计算结果的变量名
    i,j 虚数表示
    Inf
    eps 2.2204e-016
    NaN 非数
    pi π

    1.1.2 输出

    a = 10      # 确认输入之后会输出ans
    b = 10;     # 带有分号,确认输入之后不会输出ans,直接当做变量存储到workspace里
    

    1.1.3 matlab command window的基础使用

    用↑可以查看历史输入指令
    clc:清除command window的所有显示
    close all : close all figures
    clear:清除workspace所存储的所有变量信息和计算结果(慎用,不可逆)
    clear var:清除指定变量var
    who:显示在workspace所存储的变量
    whos:显示在workspace所存储的变量的详细信息

    1.2.1 矩阵行的输入

    行向量的表示: a = [1 2 3] #(数字之间用空格隔开,表示数字在同一行)
    列向量的表示: b = [1;2;3] #(数字之间用分号隔开,分号相隔的数字单独成行)
    

    1.2.2 matlab矩阵索引

    A(row, col)

    提取单个元素

    A = [1 2 3;4 5 6;7 8 9]
    A(2,3) #即提取二行三列的元素6
    

    一次提取多个元素

    A = [1 2 3;4 5 6;7 8 9]
    A([1 3], [1 3])
    

    在这里插入图片描述

    提取单个元素

    A(8) #纵向开始数,从左往右纵向数,第8个为6
    

    一次提取多个元素

    A([1 3 5]) #表示为A(1),A(3),A(5)整合的一个行向量 结果为[1 7 5]
    A([1 3;1 3]) #即表示[A(1) A(3);A(1) A(3)]
    

    1.2.3快速创建大数组
    我们可以先输入一个二维数组,然后通过第三维数组与其关系生成第三维数组,例如输入以下代码可以生成三维数组:

    D2=[1,2,3;4,5,6;7,8,9];
    
    D3(:,:,1)=D2;
    
    D3(:,:,2)=2*D2;
    
    D3(:,:,3)=3*D2;
    

    用:代表要显示的整行整列

    显示矩阵的一整行:A(3, :)表示显示矩阵的第3行,冒号表示全部信息
    显示矩阵的一整列:A(:, 2)表示显示矩阵的第2列

    删除整行整列

    删除一整行或一整列:赋值[]即可;如A(3, : ) = []使得A的第三行被删除

    矩阵间的连接

    增广矩阵C = A|B在MATLAB中采用C = [A B](注意是中括号而不是括号,中括号代表矩阵)表示

    同理,若要将B矩阵放在A矩阵的下方,则表示为:C = [A;B](即之前的数字换为矩阵)

    1.2.4矩阵的运算

    点乘:A.*B 表示A,B对应位置的数相乘所形成的矩阵(就像A+B一样只是对应位置的数相加,只是这里换成了乘法)
    点除:与点乘同理,乘法换为除法
    点阶乘:同理,A.^a 表示每个entry进行a阶乘运算
    矩阵加实数:如A + a 表示将A矩阵的所有entry都加上a
    矩阵转置:A’

    1.2.5矩阵的运算函数
    还是使用上面的矩阵A,一起来看一下矩阵的运算函数的使用。

    max(A) #表示A中每一列的最大值提取出来后形成的行向量
    
    max(max(A)) # 表示矩阵中最大的entry,即9
    

    在这里插入图片描述

    min(min(A)) # 表示矩阵中最小的entry,即1
    

    在这里插入图片描述

    sum(A) #表示A中每一列之和所组成的行向量
    

    在这里插入图片描述

    mean(A) # 表示A中每一列的平均数所组成的行向量
    

    在这里插入图片描述

    sort(A):表示A中的每一列进行从小到大的排序(每一个row的数据没有绑定在一起)
    

    在这里插入图片描述

    sortrows(A)#表示A中的所有row按第一列进行排序,每一行row的数据是绑定的
    
    size(A)#求出A的m x n
    

    在这里插入图片描述

    length(A)#求出A的长,也即为:max(m,n)(将A看成矩形,矩形的长即为length(A)的值)
    
    find(A==n)#求出A中n的位置是多少(index按前面提到的角度二计算);若不存在则返回:空矩阵: 0×1
    

    在这里插入图片描述
    1.3.1plot颜色和类型
    生成简单的sinx图

    x = 0:pi/10:2*pi;
    y = sin(x);
    figure;
    hold on;
    plot(x,y)
    

    生成矩阵图像

    X=rand(3,3); %随机生成3*3矩阵
    figure;
    hold on;
    plot(X)
    

    生成带参数的图像

    x = 0:pi/10:2*pi;
    y = sin(x);
    figure;
    hold on;
    plot(x,y,'r-') #带参数 r为红色 -为实线
    

    在这里插入图片描述

    1.4matlab的数据类型
    1.4.1数值类型
    1.实数

    Matlab的数值类型分为三种,整形,单精度浮点型和双精度浮点型
    整形 int 单精度浮点 single 双精度浮点double
    因为系统默认的数据类型是双精度浮点,所以在将变量设置为整数时需要进行转换,matlab提供了如下的转化函数。

    函数 运算法则
    floor 向下取整
    ceil 向上取整
    round 取最接近的整数
    fix 向0取整

    2.复数

    复数由实部和虚部两部分构成,在Matlab中,字符i或j默认作为虚部标志,关于复数的相关函数如下:

    函数 说明 函数 说明
    complex(a,b) 构造以a为实部,以b为虚部的复数 i,j 虚部标识
    real(z) 返回复数z的实部 image(z) 返回复数z的虚部
    abs(z) 返回复数z的模 angle(z) 返回复数z 的辅角
    conj(z) 返回复数z的共轭复数

    3、无穷量(Inf)和非数值量(NaN)

    Matlab中使用Inf和-Inf分别表示正无穷大和负无穷大,NaN表示非数值量。正负无穷大一般是由于运算溢出产生,非数值量则是由于类似0/0或Inf/Inf类型的非正常运算产生。

    1.4.2字符和字符串

    Matlab将文本作为特征字符串或简单地当做字符串,但是实际存储的是字符串的ASCII码。abs函数可以获得字符串的具体值,使用方法如下:

    >> a='abc'
    
    a =
    
    abc
    
    >> abs(a)
    
    ans =
    
        97    98    99
    

    1.4.3数据类型之间的转换
    类型识别函数:

    函数 功能 函数 功能
    iscell 判断是否为单元数组 isnumeric 判断是否为数值数组
    isreal 判断是否为实数 ischar 判断是否为字符数组
    isstr 判断是否为字符串 isfloat 判断是否为浮点数
    isstruct 判断是否为结构数组 whos 列举变量类型及相关数据

    类型转换函数:

    函数 功能 函数 功能
    dec2bin 十进制转为二进制 int2str 整数转为字符串
    num2str 数值转为字符串 str2double 字符串转为double

    1.4.4单位数组
    1.创建单位数组

    >> A={'x',[2;3;6];10,2*pi}
    
    A = 
    
        'x'     [3x1 double]
        [10]    [    6.2832]
    

    2.访问单位数组

    在单元数组中,单元和单元中的内容属于不同范畴,这意味着访问单元和访问单元中的内容是两个不同的操作。对于单元数组C,C(m,n)指的是单元数组中第m行第n列的单元,而C{m,n}则是指的是第m行第n列的单元中的内容。

    >> A(1,1)
    
    ans = 
    
        'x'
    
    >> A(1,2)
    
    ans = 
    
        [3x1 double]
    
    >> A{1,2}
    
    ans =
    
         2
         3
         6
    

    3.单位数组的合并

    >> C={'a','b';'c','d'}
    
    C = 
    
        'a'    'b'
        'c'    'd'
    
    >> D={'1','2'}
    
    D = 
    
        '1'    '2'
    
    >> E={A;B}
    
    E = 
    
        {2x2 cell}
        {2x2 cell}
    
    >> E{1,1}
    
    ans = 
    
        'x'     [3x1 double]
        [10]    [    6.2832
    

    1.5.8创建动画
    sinx 动画绘制

    clear all
    h = animatedline;%动画线
    axis([0 4*pi -1 1])
    box on
    x = linspace(0,4*pi,200);
     
    for k = 1:length(x)
        y = sin(x(k));
        addpoints(h,x(k),y);%将数据添加到动画线中
        drawnow%画出动画线
        f=getframe(gcf); 
        imind=frame2im(f);
        [imind,cm] = rgb2ind(imind,256);
        if k == 1;
            imwrite(imind,cm,'test.gif','GIF', 'Loopcount',inf,'DelayTime',1);
        else
            imwrite(imind,cm,'test.gif','GIF','WriteMode','append','DelayTime',1);
        end 
    end
    

    到此关于数学建模matlab入门的学习就到此结束了,但是学习还未结束,如需数学建模优秀论文和算法的资料,可在本文下评论获取

    展开全文
  • 其中详细讲解了MATLAB的基本知识、二维图形的绘制、三维图形的绘制、高级图形绘制技术、动画与视频、几何造型及GUI的程序设计等内容。  《详解MATLAB图形绘制技术》以精缩的理论知识、实践教学和工程训练相结合,...
  • MATLAB图形图像处理

    热门讨论 2011-01-03 12:20:11
    2.2.2 三维网格图和曲面图 第三章 MATLAB 图形对象 3.1 图形对象 3.1.1 Root 对象 3.1.2 Figure 对象 3.1.3 Uicontrol 对象 3.1.4 Uimenu 对象 3.1.5 Axes 对象 3.1.6 Image 对象 3.1.7 Line 对象 3.1.8 ...
  • matlab入门教程

    热门讨论 2011-07-01 02:15:45
    7.1.2 二维内插 7.1.3 Spline 内插 7.2 范例问题:机械手臂路径 7.3 曲线契合 7.3.1 线性回归 7.3.2 多项式回归 7.3.3 多项式契合及函数计算 第八章 解方程式根 8.1 多项式的根 8.2 非线性方程式的实根 第...
  • 2.4.3.矩阵变维 20 2.4.4.矩阵的变向 20 2.4.5.矩阵的比较关系 22 2.4.6.矩阵元素的数据变换 22 2.4.7.矩阵逻辑运算 23 2.5. 矩阵分解 24 2.5.1 Cholesky分解 24 2.5.2 LU分解 25 2.5.3 QR分解 25 2.5.4 特征...
  • VC++ matlab图像处理

    2013-09-15 15:17:54
    2.2.2 三维网格图和曲面图 第三章 MATLAB 图形对象 3.1 图形对象 3.1.1 Root 对象 3.1.2 Figure 对象 3.1.3 Uicontrol 对象 3.1.4 Uimenu 对象 3.1.5 Axes 对象 3.1.6 Image 对象 3.1.7 Line 对象 3.1.8 ...
  • matlab 與 mex

    2012-09-23 15:27:04
    7.7.5 实例5Matcom维和三维曲线绘制综合应用303 第8章 Visual C++调用Matlab C++数学库316 8.1 Matlab C++ 数学库介绍316 8.2 在Visual C++工程中调用Matlab C++数学库316 8.3 Matlab C++数学库的使用318 ...
  • 5.3 三维图形绘制 5.3.1 曲线图绘制 5.3.2 网格图绘制 5.3.3 曲面图的绘制 5.3.4 光照模型 5.3.5 绘制等值线图 5.4 四维图形可视化 5.4.1 用颜色描述第四维 5.4.2 其他函数 5.5 本章小结 第2 篇 第...
  • MATLAB使用教程

    2008-09-06 05:18:31
    7.1.2 二维内插 7.1.3 Spline 内插 7.2 范例问题:机械手臂路径 7.3 曲线契合 7.3.1 线性回归 7.3.2 多项式回归 7.3.3 多项式契合及函数计算 第八章 解方程式根 8.1 多项式的根 8.2 非线性方程式的实根 第...
  • matlab经典教程全集

    热门讨论 2010-05-20 14:30:04
    7.1.2 二维内插 7.1.3 Spline 内插 7.3 曲线契合 7.3.1 线性回归 7.3.2 多项式回归 7.3.3 多项式契合及函数计算 第八章 解方程式根 8.1 多项式的根 8.2 非线性方程式的实根 第九章 数值微分及积分 --- 管流...
  • 2.2.2 三维网格图和曲面图 第三章 MATLAB 图形对象 3.1 图形对象 3.1.1 Root 对象 3.1.2 Figure 对象 3.1.3 Uicontrol 对象 3.1.4 Uimenu 对象 3.1.5 Axes 对象 3.1.6 Image 对象 3.1.7 Line 对象 3.1.8 ...
  • 2.2.2 三维网格图和曲面图 第三章 MATLAB 图形对象 3.1 图形对象 3.1.1 Root 对象 3.1.2 Figure 对象 3.1.3 Uicontrol 对象 3.1.4 Uimenu 对象 3.1.5 Axes 对象 3.1.6 Image 对象 3.1.7 Line 对象 3.1.8 ...
  • 2.2.2 三维网格图和曲面图 第三章 MATLAB 图形对象 3.1 图形对象 3.1.1 Root 对象 3.1.2 Figure 对象 3.1.3 Uicontrol 对象 3.1.4 Uimenu 对象 3.1.5 Axes 对象 3.1.6 Image 对象 3.1.7 Line 对象...
  • MATLAB中的ODE求解器优化了步长算法,采用步长的时候能够运行更快,而且显而易见的是得到的结果是更加精确的。现在在MATLAB Central站点,一些定时步长的函数可以直接利用。这些求解器有: ODE1 一阶Euler ...
  • 18.8 三维数据的二维图 18.9 其它函数 18.10 动画 18.11 小结 第19章 颜色 19.1 颜色映象理解 19.2 颜色映象使用 19.3 颜色映象显示 19.4 颜色映象的建立和修改 19.5 图形中使用一个以上的颜色映象 19.6 用颜色描述...
  • 18.8 三维数据的二维图 18.9 其它函数 18.10 动画 18.11 小结 第19章 颜色 19.1 颜色映象理解 19.2 颜色映象使用 19.3 颜色映象显示 19.4 颜色映象的建立和修改 19.5 图形中使用一个以上的颜色...
  • 18.8 三维数据的二维图 18.9 其它函数 18.10 动画 18.11 小结 第19章 颜色 19.1 颜色映象理解 19.2 颜色映象使用 19.3 颜色映象显示 19.4 颜色映象的建立和修改 19.5 图形中使用一个以上的颜色映象 19.6 ...
  • 18.8 三维数据的二维图 18.9 其它函数 18.10 动画 18.11 小结 第19章 颜色 19.1 颜色映象理解 19.2 颜色映象使用 19.3 颜色映象显示 19.4 颜色映象的建立和修改 19.5 图形中使用一个以上的颜色映象 19.6 ...
  • 18.8 三维数据的二维图 18.9 其它函数 18.10 动画 18.11 小结 第19章 颜色 19.1 颜色映象理解 19.2 颜色映象使用 19.3 颜色映象显示 19.4 颜色映象的建立和修改 19.5 图形中使用一个以上的颜色映象 19.6 ...
  • MATLAB常用算法

    热门讨论 2010-04-05 10:34:28
    peHypb2FL 用拉克斯-弗里德里希斯格式解二维对流方程的初值问题 peParabExp 用显式格式解扩散方程的初值问题 peParabTD 用跳点格式解扩散方程的初值问题 peParabImp 用隐式格式解扩散方程的初边值问题 peParabKN 用...
  • 7.1.2 二维内插 7.1.3 Spline 内插 7.2 范例问题:机械手臂路径 7.3 曲线契合 7.3.1 线性回归 7.3.2 多项式回归 7.3.3 多项式契合及函数计算 第八章 解方程式根 8.1 多项式的根 8.2 非线性方程式的实根 第...
  • MATLAB程序设计与典型应用(源程序)

    热门讨论 2013-07-04 20:54:16
    函数运算的MATLAB实现... 86 3.3.1 复数的概念... 86 3.3.2 复变量的函数... 86 3.3.3 复数的生成及其矩阵创建... 87 3.3.4 复数的几何意义... 88 3.3.5 MATLAB在复数代数运算中的实现... 90 第4章 MATLAB程序...
  • 18.8 三维数据的二维图 18.9 其它函数 18.10 动画 18.11 小结 第19章 颜色 19.1 颜色映象理解 19.2 颜色映象使用 19.3 颜色映象显示 19.4 颜色映象的建立和修改 19.5 图形中使用一个以上的颜色映象 19.6 ...
  • 18.8 三维数据的二维图 18.9 其它函数 18.10 动画 18.11 小结 第19章 颜色 19.1 颜色映象理解 19.2 颜色映象使用 19.3 颜色映象显示 19.4 颜色映象的建立和修改 19.5 图形中使用一个以上的颜色映象 19.6 ...
  • 3.2.19 reshape 矩阵变维/70 3.2.20 inv/pinv 矩阵求逆/求伪逆/71 3.2.21 rank/det 求矩阵的秩/行列式/73 3.2.22 eig 矩阵的特征值分解/73 3.2.23 svd 矩阵的奇异值分解/74 3.2.24 trace 求矩阵的迹/75 3.2.25 norm ...
  • 5.3 三维图形绘制 5.3.1 曲线图绘制 5.3.2 网格图绘制 5.3.3 曲面图的绘制 5.3.4 光照模型 5.3.5 绘制等值线图 5.4 四维图形可视化 5.4.1 用颜色描述第四维 5.4.2 其他函数 5.5 本章小结 第2 篇 第...
  • peHypb2FL 用拉克斯-弗里德里希斯格式解二维对流方程的初值问题 peParabExp 用显式格式解扩散方程的初值问题 peParabTD 用跳点格式解扩散方程的初值问题 peParabImp 用隐式格式解扩散方程的初边值问题 peParabKN 用...

空空如也

空空如也

1 2 3
收藏数 42
精华内容 16
关键字:

matlab三维矩阵变二维

matlab 订阅