matlab三维画图画图

MATLAB绘图篇
图形绘制篇
1. 基本xy平面绘图命令
MATLAB不但擅长於矩阵相关的数值运算,也适合用在各种科学目视表示(Scientific visualization)。
本节将介绍MATLAB基本xy平面及xyz空间的各项绘图命令,包含一维曲线及二维曲面的绘制、列印及存档。
plot是绘制一维曲线的基本函数,但在使用此函数之前,我们需先定义曲线上每一点的x 及y座标。
下例可画出一条正弦曲线:
x=linspace(0, 2*pi, 100); % 100个点的x座标
y=sin(x); % 对应的y座标
plot(x,y);
小整理:MATLAB基本绘图函数
plot: x轴和y轴均为线性刻度(Linear scale)
loglog: x轴和y轴均为对数刻度(Logarithmic scale)
semilogx: x轴为对数刻度,y轴为线性刻度
semilogy: x轴为线性刻度,y轴为对数刻度
若要画出多条曲线,只需将座标对依次放入plot函数即可:
plot(x, sin(x), x, cos(x));
若要改变颜色,在座标对後面加上相关字串即可:
plot(x, sin(x), 'c', x, cos(x), 'g');
若要同时改变颜色及图线型态(Line style),也是在座标对後面加上相关字串即可:
plot(x, sin(x), 'co', x, cos(x), 'g*');
小整理:plot绘图函数的叁数字元颜色字元图线型态y 黄色。点k黑色o 圆w 白色x xb 蓝色+ +g 绿色* *r 红色- 实线c 亮青色: 点线m 锰紫色-. 点虚线-- 虚线
图形完成後,我们可用axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围:
axis([0, 6, -1.2, 1.2]);
此外,MATLAB也可对图形加上各种注解与处理:
xlabel('Input Value'); % x轴注解
ylabel('Function Value'); % y轴注解
title('Two Trigonometric Functions'); % 图形标题
legend('y = sin(x)','y = cos(x)'); % 图形注解
% 显示格线
我们可用subplot来同时画出数个小图形於同一个视窗之中:
subplot(2,2,1); plot(x, sin(x));
subplot(2,2,2); plot(x, cos(x));
subplot(2,2,3); plot(x, sinh(x));
subplot(2,2,4); plot(x, cosh(x));
MATLAB还有其他各种二维绘图函数,以适合不同的应用,详见下表。
小整理:其他各种二维绘图函数
bar 长条图
errorbar 图形加上误差范围
fplot 较精确的函数图形
polar 极座标图
hist 累计图
rose 极座标累计图
stairs 阶梯图
stem 针状图
fill 实心图
feather 羽毛图
compass 罗盘图
quiver 向量场图
以下我们针对每个函数举例。
当资料点数量不多时,长条图是很适合的表示方式:
% 关闭所有的图形视窗
y=rand(size(x));
如果已知资料的误差量,就可用errorbar来表示。下例以单位标准差来做资的误差量:
x = linspace(0,2*pi,30);
y = sin(x);
e = std(y)*ones(size(x));
errorbar(x,y,e)
对於变化剧烈的函数,可用fplot来进行较精确的绘图,会对剧烈变化处进行较密集的取样,如下例:
fplot('sin(1/x)', [0.02 0.2]); % [0.02 0.2]是绘图范围
若要产生极座标图形,可用polar:
theta=linspace(0, 2*pi);
r=cos(4*theta);
polar(theta, r);
对於大量的资料,我们可用hist来显示资料的分 情况和统计特性。下面几个命令可用来验证randn产生的高斯乱数分 :
x=randn(5000, 1); % 产生5000个 m=0,s=1 的高斯乱数
hist(x,20); % 20代表长条的个数
rose和hist很接近,只不过是将资料大小视为角度,资料个数视为距离,并用极座标绘制
x=randn(1000, 1);
stairs可画出阶梯图:
x=linspace(0,10,50);
y=sin(x).*exp(-x/3);
stairs(x,y);
stems可产生针状图,常被用来绘制数位讯号:
x=linspace(0,10,50);
y=sin(x).*exp(-x/3);
stem(x,y);
stairs将资料点视为多边行顶点,并将此多边行涂上颜色:
x=linspace(0,10,50);
y=sin(x).*exp(-x/3);
fill(x,y,'b'); % 'b'为蓝色
feather将每一个资料点视复数,并以箭号画出:
theta=linspace(0, 2*pi, 20);
z = cos(theta)+i*sin(theta);
feather(z);
compass和feather很接近,只是每个箭号的起点都在圆点:
theta=linspace(0, 2*pi, 20);
z = cos(theta)+i*sin(theta);
compass(z);
2.基本XYZ立体绘图命令
在科学目视表示(Scientific visualization)中,三度空间的立体图是一个非常重要的技巧。本章将介绍MATLAB基本XYZ三度空间的各项绘图命令。
mesh和plot是三度空间立体绘图的基本命令,mesh可画出立体网状图,plot则可画出立体曲面图,两者产生的图形都会依高度而有不同颜色。
下列命令可画出由函数&图片&形成的立体网状图:
x=linspace(-2, 2, 25); % 在x轴上取25点
y=linspace(-2, 2, 25); % 在y轴上取25点
[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩阵
zz=xx.*exp(-xx.^2-yy.^2); % 计算函数值,zz也是21x21的矩阵
mesh(xx, yy, zz); % 画出立体网状图
surf和mesh的用法类似:
x=linspace(-2, 2, 25); % 在x轴上取25点
y=linspace(-2, 2, 25); % 在y轴上取25点
[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩阵
zz=xx.*exp(-xx.^2-yy.^2); % 计算函数值,zz也是21x21的矩阵
surf(xx, yy, zz); % 画出立体曲面图
为了方便测试立体绘图,MATLAB提供了一个peaks函数,可产生一个凹凸有致的曲面,包含了三个局部极大点及三个局部极小点
要画出此函数的最快方法即是直接键入peaks:
z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...
- 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...
- 1/3*exp(-(x+1).^2 - y.^2)
我们亦可对peaks函数取点,再以各种不同方法进行绘图。
meshz可将曲面加上围裙:
meshz(x,y,z);
axis([-inf inf -inf inf -inf inf]);
waterfall可在x方向或y方向产生水流效果:
waterfall(x,y,z);
axis([-inf inf -inf inf -inf inf]);
下列命令产生在y方向的水流效果:
waterfall(x',y',z');
axis([-inf inf -inf inf -inf inf]);
meshc同时画出网状图与等高线:
meshc(x,y,z);
axis([-inf inf -inf inf -inf inf]);
surfc同时画出曲面图与等高线:
surfc(x,y,z);
axis([-inf inf -inf inf -inf inf]);
contour3画出曲面在三度空间中的等高线:
contour3(peaks, 20);
axis([-inf inf -inf inf -inf inf]);
contour画出曲面等高线在XY平面的投影:
contour(peaks, 20);
plot3可画出三度空间中的曲线:
t=linspace(0,20*pi, 501);
plot3(t.*sin(t), t.*cos(t), t);
亦可同时画出两条三度空间中的曲线:
t=linspace(0, 10*pi, 501);
plot3(t.*sin(t), t.*cos(t), t, t.*sin(t), t.*cos(t), -t);
3. 三维网图的高级处理
3a. 消隐处理
例.比较网图消隐前后的图形
z=peaks(50);
subplot(2,1,1);
title('消隐前的网图')
hidden off
subplot(2,1,2)
title('消隐后的网图')
colormap([0 0 1])
3b. 裁剪处理
利用不定数NaN的特点,可以对网图进行裁剪处理
例.图形裁剪处理
P=peaks(30);
subplot(2,1,1);
title('裁剪前的网图')
subplot(2,1,2);
P(20:23,9:15)=NaN*ones(4,7); %剪孔
meshz(P) %垂帘网线图
title('裁剪后的网图')
colormap([0 0 1]) %蓝色网线
4. 三维旋转体的绘制
为了一些专业用户可以更方便地绘制出三维旋转体,MATLAB专门提供了2个函数:柱面函数cylinder和球面函数sphere
(1) 柱面图
柱面图绘制由函数cylinder实现.
[X,Y,Z]=cylinder(R,N) 此函数以母线向量R生成单位柱面.母线向量R是在单位高度里等分刻度上定义的半径向量.N为旋转圆周上的分格线的条数.可以用surf(X,Y,Z)来表示此柱面.
[X,Y,Z]=cylinder(R)或[X,Y,Z]=cylinder此形式为默认N=20且R=[1 1]
例.柱面函数演示举例
x=0:pi/20:pi*3;
r=5+cos(x);
[a,b,c]=cylinder(r,30);
mesh(a,b,c)
例.旋转柱面图.
r=abs(exp(-0.25*t).*sin(t));
t=0:pi/12:3*
r=abs(exp(-0.25*t).*sin(t));
[X,Y,Z]=cylinder(r,30);
mesh(X,Y,Z)
colormap([1 0 0])
(2) 球面图
球面图绘制由函数sphere来实现
[X,Y,Z]=sphere(N) 此函数生成3个(N+1)*(N+1)的矩阵,利用函数 surf(X,Y,Z) 可产生单位球面.
[X,Y,Z]=sphere 此形式使用了默认值N=20.
Sphere(N) 只是绘制了球面图而不返回任何值.
例.绘制地球表面的气温分布示意图.
[a,b,c]=sphere(40);
surf(a,b,c,t);
axis('equal') %此两句控制坐标轴的大小相同.
axis('square')
colormap('hot')
声明:本文转载自赵越微信公众平台
为方便研友们进行学术讨论,研之成理也开创了自己的QQ群,1号群:已满;2号群:已满;3号群:。欢迎大家加入进行激烈的学术讨论!
本文版权属于研之成理,转载请通过QQ联系我们,未经许可请勿盗版,谢谢!
搜索微信号rationalscience,轻松关注我们,谢谢!
责任编辑:
声明:本文由入驻搜狐号的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
微信号:rationalscience,助力科研,让知识产生价值
加速知识流通,让知识产生价值
今日搜狐热点matlab绘图功能
在电子工程世界为您找到如下关于“matlab绘图功能”的新闻
matlab绘图功能资料下载
预分配方法
2. 3 MATLAB与其他应用程序接口
2. 3. 1 API概述
2. 3. 2 MEX文件的使用方法
2. 3. 3 MAT文件的使用方法
2. 3. 4 MATLAB引擎的使用
2. 4 实例讲解
第3章 MATLAB图形初步
3. 1 MATLAB基本图形及编辑方法
地对 MATLAB 的功能进行扩充,从而在不断深化对问题认识的同时,不断完善 MATLAB 产品以提高产品自身的竞争能力。 目前 MATLAB 产品族可以用来进行: 数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与方针 数字图像处理 数字信号处理 通讯系统设计与仿真 财务与金融工程 注:由于软件较大,请在下载地址上,右键选择迅雷或快车进行下载。否则可能会出现服务器忙。限制了同时下载人数,请下载时等待时机...
,是一个跨平台的科学计算环境。它以其强大的计算和绘图功能、大量稳定可靠的算法库、简洁高效的编程语言以及庞大的用户群,成为数学计算工具方面事实上的标准。几乎所有的工程计算领域,MATL朋都有相应的软件工具箱。很多第三方软件开发者还为各种不同的专业开发出相应的工具箱,进一步完善了MATLAB的功能。因此,借助于MATLAB可以高质量地完成大多数工程计算任务。在经历了4.x、5.x、6.x等一系列版本的更新...
的《MATLAB编程》一书(网上搜索“S.J.Chapman《MATLAB编程》中文版修正版”就是了),如果你学习MATLAB是想进行科学计算,那我建议你阅读我翻译的《MATLAB揭秘》一书(本书),本书介绍了统计、绘图、求微积分、解微分方程、解ODE、变换、曲线拟合、特殊函数……很多的高数方面的应用,还附有习题和答案。
我是一个MATLAB初学者,我知道并不比你多,所以,请最好不要向我问有关MATLAB...
情况 Wcase 分析 优化设计等复杂电路特性分析 它是国际上仿真电路的权威软件 而MATLAB的主要特点有 高效方便的矩阵和数组运算 编程效率高 结构化面向对象 方便的绘图功能 用户使用方便 工具箱功能强大 两者各有着重点 两种软件结合应用 对研究工作有很重要的意义香港理工大学Y. S. LEE 等人首先将PSpice和MATLAB结合 开发了电力电子电路优化用的CAD 程序MAT...
维矩阵为基本运算单元的解释执行的高级语言,编程简便,特别适合于数值计算,只要几个语句就能实现诸如FFT、各种方法的滤波、系统辨识、小波变换等。Matlab 具有强大的绘图功能,含有丰富的工具箱函数,能对特定领域中的课题方便地进行分析、计算和研究。在实际应用中通过各种数据交换方式将数据传入计算机,进而借助Matlab 的强大分析处理能力对数据进行分析和处理。在Matlab 环境下,要通过RS-232...
RSView32 能够对自动控制设备或生产过程进行高速有效监视和控制,MATLAB 具有强大的科学计算和绘图功能。本文介绍了在RSView32 与MATLAB 间进行通讯的方法,并以1336PLUSⅡ为例着重论述了基于RSView32 和MATLAB 通讯的控制器参数优化。关键词: 组态软件 动态数据交换 RSView32 MATLAB ActiveX 对象 1336PLUSⅡ 设备网...
matlab编程入门必备教程 Matlab作为一种广泛应用于科学计算的工具软件,不仅具有强大的数值计算、符号计算、矩阵运算能力和丰富的绘图功能,同时也具有和 C、FORTRAN 等高级语言一样进行程序设计。
利用 Matlab 的程序控制功能,可以将有关 Matlab 命令编成程序存储在一个文件中(M 文件),然后在命令窗口中运行该文件,Matlab 就会自动依次执行文件中的命令,直到全部...
的一种有效方法。关键词:OPC ;MATLAB;MCGS;实时通讯在控制系统组态设计过程中,如何有效地实现控制算法一直是人们普遍关心的问题,工控组态软件MCGS 提供了友好的人机交互界面,强大的通讯功能,但它的计算能力不强,难以实现复杂的控制策略。Matlab 则具有强大的数值分析、计算和绘图功能,拥有强大的控制算法工具箱,可以完成对任意复杂控制系统的设计、计算、分析和仿真,已经广泛应用于控制系统的...
、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具,是攻读学位的大学生、硕士生、博士生必须掌握的基本技能。MATLAB的主要特点是:&有高性能数值计算的高级算法,特别适合矩阵代数领域;&有大量事先定义的数学函数,并且有很强的用户自定义函数的能力;&有强大的绘图功能以及具有教育、科学和艺术学的图解和可视化的二维...
matlab绘图功能相关帖子
为核心的现代计算机视觉库mlpack :可扩展的C++机器学习库OpenCV:开源计算机视觉库Recommender:使用协同过滤进行产品推荐/建议的C语言库。SHOGUN:Shogun 机器学习工具sofia-ml :用于机器学习的快速增量算法套件
数学Armadillo :高质量的C++线性代数库,速度和易用性做到了很好的平衡。语法和MatlAB很相似blaze:高性能的C++数学库...
4.1.4 try和catch组成的试探结构
4.1.5 MATLAB程序设计举例
4.2 MATLAB函数的编写
4.2.1 MATLAB函数基本结构
4.2.2 MATLAB函数编写举例
4.3 MATLAB程序设计中应注意的问题
第5章 MATLAB语言的绘图基础
5.1 二维图形的绘制
5.1.1 绘制二维图形的基本函数及示例
5.1.2 图形的修饰...
软件集成MSC Easy5与其他工程分析软件具有全面的数据接口,如MSC Adams、MATLAB/Simulink®等,使得复杂大型系统的整体分析可以借助多种软件的各自优势共同实现,以建立完整的复杂功能虚拟样机。优异的集成能力使得MSC Easy5成为多种工程软件所建立模型的理想的集成仿真环境。1. CAE软件集成MSC Easy5可以与多种领先的工程软件实现集成,以实现复杂系统的仿真...
数据计算有这样几个参数1:正弦幅值(三角幅值与之成比例)2:载波比N值即半周期中三角波个数。另外pwm的占空比即定时器的通道值是和pwm的周期值有关系的,因此为了计算定时器通道值还需要一个周期值,对于stm32f这个值就是定时器ARR寄存器的值,它决定pwm周期(或频率)。附件中有个matlab_spwm.rar,matlab下计算定时器spwm数值和绘图的小工具上面几个图就是用它画的,开始部分...
matlab和C/Cpp进行仿真或相关接口函数编写,深刻理解并有较强3G/4G
&无线通信系统设计或实现经验,良好的中英文口语和读写能力,现场测试/诊断问题
&3、较强的沟通协调能力、口头表达能力以及文字功底;
&4、较好的英语水平,6级以上水平。
北京信威通信技术股份有限公司从事无线通信领域最前沿、最核心产品的研发、生产、销售、安装和售后服务...
存储矢量图文件问题 记录采样值,在PC内用EXCEL自动生成曲线图
只要把采集数据点收集起来就行,我这个没有做过,但是我学过matlab软件,用数据点就可以用maltab绘制成曲线。
不过楼上的那种更方面
这个最好不要在MCU平台上生成,运算量和存储量都不合适,简单的存数据即可,然后在PC平台上处理,哪怕是用2楼的方法都好。
PC机上我弄过,现在想在单片机平台上实现啊
如果你在PC平台...
今天收到网友的邮件,看来有必要来介绍一下这一块的东西啦!
matlab的强大,可以从它的功能看的出来!
  MATLAB 产品族可以用来进行以下各种工作:
  ● 数值分析
  ● 数值和符号计算
  ● 工程与科学绘图
  ● 控制系统的设计与仿真
  ● 数字图像处理
  ● 数字信号处理
  ● 通讯系统设计与仿真
  ● 财务与金融工程...
ez代表的easy to
功能:直接用字符串描写函数图形!
& && && & 与符号计算配套使用!最为符号计算可视化工具!
下面看一个简单的例子,就可以绘制你想要的函数图形啦! matlab简洁绘图指令! 恍然大悟,不错不错真的很不错,但是这个只能用来对有函数描述的图形进行。不能对一组数据进行绘图。 a 对于一组数绘图...
.eeworld.com.cn/thread-.html其他事宜还没有想好,有变化的话,在跟新!!!现在开始从同学习matlab啦! http://bbs.eeworld.com.cn/thread-.htmlmatlab简洁绘图指令,一条解决三维图形绘制!http://bbs.eeworld.com.cn/thread-.htmlhttp...
先来看看它的系统仿真-------引擎!!!
再来看看它支持的东东!!!
Matlab常用工具箱
  MATLAB包括拥有数百个内部函数的主包和三十几种工具包。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于...
matlab绘图功能视频
你可能感兴趣的标签
热门资源推荐扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
x^2+y^2=1用MATLAB画图怎么画
作业帮用户
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
>> ezplot('x^2+y^2=1') >> axis equal
为您推荐:
其他类似问题
ezplot('x^2+y^2=1')
扫描下载二维码matlab中如何在同一幅图上绘图_百度知道
matlab中如何在同一幅图上绘图
我用mesh命令,画了一个三维图,为了便于观察,我想在这个图上画几个辅助线,请给个小例子。谢谢
我有更好的答案
方法/步骤1、绘制图像前首先需要得到曲线数据,如下所示即为计算过程:% calculate the first linex1 = 0:0.01:10;y1 = x1.^2;% calculate the second linex2 = 0:0.01:10;y2 = x2;plot(x2,y2);2、在绘制曲线时常用plot(x,y)函数,如下所示:plot(x1,y1);plot(x2,y2);为了保证绘制在同一幅图中,所以需要使用命令: hold on&3、设置图像的横坐标轴和纵坐标轴,并设置标题:xlabel('x')ylabel('y')title('在一幅图中绘制多条曲线')综上所述,完整的代码如下所示,点击红色箭头所指的运行按钮就可以看到运行结果:4、运行结果如下所示:
电子产品技术支持
x=[-1,z); %画抛物面 plot(x,y),Y.1:1]; [X,Y]=meshgrid(x,y); %产生抛物面mesh(X.1.^2+Y.^2+1:0;z=X。 针对你的问题补充:0:1]; y=[-1,效果是画个抛物面,然后在xy上面画两条直线,写了个简单代码,然后就可以在这张图上继续画了,画完了记得再hold off即可mesh画完后加条hold on指令
本回答被提问者采纳
为您推荐:
其他类似问题
您可能关注的内容
matlab的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 matlab画图函数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信