matlab中画图的时各种设置
matlab plot 参数

matlab plot 参数Matlab是一种十分强大的数据计算和可视化工具。
在Matlab中,plot是一种基本的画图函数,可以用于绘制二维的函数图像、数据图、曲线等等。
在使用plot函数时,需要设置一些参数来控制图像的样式、颜色、线型等等,因此本文将围绕“matlab plot 参数”这一主题展开。
Step 1: 颜色参数在Matlab中,可以使用plot函数的第三个参数来指定曲线的颜色。
此参数可以是字符串、颜色名称、RGB三元组等。
例如: plot(x, y, 'r') %将曲线绘制为红色plot(x, y, 'g--') %将曲线绘制为绿色的虚线除了前面的'r'和'g--'之外,Matlab还提供了各种固定的颜色名称,如'blue'、'red'、'green'等等。
此外,也可以使用RGB三元组来指定颜色,如'[0.5 0.5 0.5]'表示灰色,'[1 0 1]'表示紫色。
Step 2: 线型参数在Matlab中,plot函数的第二个参数可以指定曲线的线型。
常见的线型有实线、虚线、点线、点虚线等,可以通过字符串来指定具体的线型。
例如:plot(x, y, '-') %将曲线绘制为实线plot(x, y, '--') %将曲线绘制为虚线plot(x, y, ':') %将曲线绘制为点线plot(x, y, '-.') %将曲线绘制为点虚线不仅如此,Matlab还提供了更加丰富的线型选项,如破折号加点、三角形标记等,都可以通过字符串来指定。
例如:plot(x, y, '-.*') %将曲线绘制为点虚线加点的形式plot(x, y, '^:') %将曲线绘制为带有三角形标记的点线Step 3: 标记参数除了颜色和线型之外,Matlab的plot函数还支持一些标记参数,可以在曲线上标记出数据点的位置。
[整理]Matlab学习笔记--Matlab画图.
![[整理]Matlab学习笔记--Matlab画图.](https://img.taocdn.com/s3/m/91443f3876c66137ee0619eb.png)
1.基本绘图函数:2.Matlab绘图步骤3.plot(x,y,s) s是字符串,不同的字符串代表不同的线型plot(x1,y1,s1,x2,y2,s2,…..)是将多个图形或函数曲线拼接放置在同一个图形框中。
函数曲线的颜色、线型和数据点型上面左边的b代表蓝色,-.代表点线型,就是x取的各点之间的连线为-.,而x取值的各个点的类型为空,就代表是默认的点型上面那个是r代表红色,--代表线型,而点型是*就是x取了多少个点,就多少个*,而*和*直接的连接为—上面的s里面的写法为:线型+颜色+点型线性为-.,颜色为k代表黑色,点型为h代表六角星型。
我们还可以不定义线性,为空,那么两个点之间就不连线了。
4.我们还可以定义曲线的颜色和线宽LineWidth:设定绘图曲线的粗细MarkerEdgeColor:数据点型或边界的颜色(圆形、菱形、六角星型等) MarkerFaceColor:数据点型的天聪颜色。
MarkerSize:数据点的大小从上可以看出:线型为--,颜色为r代表红色,点型为s代表方形,线的粗细为3,点标记的颜色为r代表红色,点标记的填充颜色为y代表黄色,点标记的大小为10.5.很多时候,需要在一张图上多次画多条曲线。
就需要hold函数:即图形保持命令,主要用于暂存当前的图形窗口,可以让用户继续在命令窗口中绘制其他函数图形,并且后续的图形曲线与当前窗口中的曲线在同一个图形界面中显示。
Hold函数不会因后面画的图形的坐标值不一样而改变当前坐标轴的定义范围。
Hold on函数:作用同上,但可以根据新的图形曲线的坐标轴极限值来自动调整当前坐标轴的坐标值。
Hold off函数:结束当前的图形保持状态,一般与Hold on匹配,hold off函数后就需要从新设置坐标轴的属性。
Hold All函数:保留当前的颜色和线型,这样在绘制后面的图形时就是用当前的颜色和线型。
这里x变换是从0—1我们通过hold on之后,就把后面的1—2的变换接上去了,效果很好。
MATLAB常见绘图问题及解决方法

MATLAB常见绘图问题及解决方法一、引言MATLAB作为一种强大的科学计算和数据可视化工具,广泛应用于各个领域。
在进行数据分析和可视化过程中,经常会遇到一些绘图问题。
本文将针对一些常见的绘图问题进行探讨,并提供相应的解决方法,帮助读者更好地使用MATLAB进行数据可视化。
二、数据处理与准备在进行绘图前,首先需要对数据进行处理和准备。
常见的问题包括数据清洗、数据类型转换以及数据筛选与排序等。
在MATLAB中,可以使用各种功能强大的函数来解决这些问题。
例如,可以使用"readtable"函数读取Excel中的数据,并使用"table2array"函数将表格转换为数组。
此外,还可以使用"sort"函数对数据进行排序,或者使用"unique"函数去除重复值。
三、基本绘图函数的使用MATLAB提供了丰富的基本绘图函数,如"plot"、"bar"、"scatter"等,可以根据需求选择适合的函数进行绘图。
然而,在使用这些函数时,也会遇到一些常见的问题。
1. 如何设置坐标轴范围在绘制图形时,经常需要设置坐标轴的范围,以确保所展示的数据能够完整显示。
可以使用"xlim"和"ylim"函数来设置x轴和y轴的范围。
例如,使用"xlim([0,10])"将x轴范围设置为0到10。
2. 如何设置坐标轴标题为了使图形更加清晰明了,可以为坐标轴添加标题。
可以使用"xlabel"和"ylabel"函数来设置x轴和y轴的标题。
例如,可以使用"xlabel('时间(s)')"来为x轴添加标题。
3. 如何添加图例在绘图时,可能同时展示多条曲线或者多个数据集,此时需要添加图例以区分不同的曲线或数据。
matlab绘图设置属性代码

%实现功能,对下表所示获取的数据进行处理绘图,如A0-A3是三次采样结果,随时间变化是A0-C0%A0 A1 A2 A3%B0 B1 B2 B3%C0 C1 C2 C3%单引号内为文件路径名d=importdata('D:\ninewallgg.dat'); %读取后为矩阵%对矩阵进行转置%d=d';%例如求A0,A1,A2平均值average=mean(d);x=0.05:0.1:0.95;%plot(x,y,'--hr','LineWidth',1.5,'MarkerEdgeColor','c','MarkerFaceColor','m%','MarkerSize',10);%设置背景颜色figure('color','white');%设置线宽为2,线型,颜色,标记大小等plot(x,average,':*k','linewidth',2,'MarkerSize',5);%保留图形,继续画其他的hold on;plot(x,av,':*b','linewidth',2,'MarkerSize',5);hold on;%抽取第一列和第二列分别绘图%plot(dd(:,1),dd(:,2));%设置坐标轴属性axis normal;%axis([0 0.4 0 150]);%set(gca,'XGrid','on');set(gca,'YGrid','on');%设置标注框内容及格式dds=legend('Von Neunann邻域','Moore邻域');set(dds,'FontSize',12);%设置标题title('不同邻域对比','FontSize',14);%设置坐标轴名称,字体大小xlabel('init density','FontSize',14);ylabel('The total time of evacation','FontSize',12);。
matlab画图技巧方法

matlab绘图的一些技巧1.在坐标轴上任意标上感兴趣的刻度。
用XTick、YTick、ZTick。
如图1.如:x=0:0.1:10;y=x.^2;h=plot(x,y,'o',x,y);set(gca,'YTick',[0,10,25,50,80,99],'XTick',[0.5,8,10]); 用XTickLabel、YTickLabel、ZTickLabel属性把标记标签从数值改为字符串。
如图2.如将y轴上的值80用字符串代替:x=0:0.1:10;y=x.^2;h=plot(x,y,'o',x,y);set(gca,'YTickLabel','0|10|25|50|cutoff|99');图1图22.使用多个x轴和y轴XAxisLocation和YAxisLocation属性指定在图形的哪一侧放置x轴和y轴。
如图3.x1=0:0.01:10;y1=sin(x1);h1=line(x1,y1,'Color','r');ax1=gca;set(ax1,'XColor','r','YColor','r');ax2=axes('Position',get(ax1,'Position'),'XAxisLocation','top','YAxisLocation','right','Color','none',' XColor','k','YColor','k');x2=x1;y2=cos(x2);h2=line(x2,y2,'Color','k','Parent',ax2);图33.连接图形与变量(更新自变量或因变量的值)用数据源属性XDataSource、YDataSource、ZDataSource及refreshdata.可以做动画。
[整理]matlab画图
![[整理]matlab画图](https://img.taocdn.com/s3/m/601cc61ebd64783e09122bf0.png)
1.平面作图函数:plot,其基本调用形式:plot(x,y,s)以x作为横坐标,y作为纵坐标.s是图形显示属性的设置选项.例如:x=-pi:pi/10:pi;y=sin(x);plot(x,y,'--rh','linewidth',2,'markeredgecolor','b','markerfacecolor','g')在使用函数plot时,应当注意到当两个输入量同为向量时,向量x与y必须维数相同,而且必须同是行向量或者同是列向量.绘图时,可以制定标记的颜色和大小,也可以用图形属性制定其他线条特征,这些属性包括:linewidth指定线条的粗细.markeredgecolor指定标记的边缘色markerfacecolor指定标记表面的颜色.markersize指定标记的大小.若在一个坐标系中画几个函数,则plot的调用格式如下:plot(x1,y1,s1,x2,y2,s2,……)4.双纵坐标函数plotyy在Matlab中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy函数,它能把具有不同量纲,不同数量级的两个函数绘制在同一个坐标中,有利于图形数据的对比分析。
使用格式为:plotyy(x1,y1,x2,y2)x1,y1对应一条曲线,x2,y2对应另一条曲线。
横坐标的标度相同,纵坐标有两个,左边的对应x1,y1数据对,右边的对应x2,y2。
二.绘制图形的辅助操作绘制完图形以后,可能还需要对图形进行一些辅助操作,以使图形意义更加明确,可读性更强。
1.图形标注在绘制图形时,可以对图形加上一些说明,如图形的名称、坐标轴说明以及图形某一部分的含义等,这些操作称为添加图形标注。
有关图形标注函数的调用格式为:title(’图形名称’)(都放在单引号内)xlabel(’x轴说明’)ylabel(’y轴说明’)text(x,y,’图形说明’)legend(’图例1’,’图例2’,…) P190其中,title、xlabel和ylabel函数分别用于说明图形和坐标轴的名称。
MATLAB绘图中常见问题及解决方法

MATLAB绘图中常见问题及解决方法概述:MATLAB是一种功能强大的数值分析和绘图工具,广泛应用于科学研究、工程应用和数据可视化领域。
然而,在使用MATLAB绘图的过程中,我们可能会遇到一些常见问题。
本文将针对这些问题提供解决方法,帮助读者更好地使用MATLAB进行绘图。
问题一:图像显示不清晰有时候,我们在绘制图像后发现其显示效果不够清晰,无法满足我们的需求。
这可能是由于图像分辨率较低导致的。
为了解决这个问题,我们可以使用MATLAB提供的improveResolution函数来提高图像的分辨率。
该函数可以通过调整图像的大小、分辨率和显示参数来改善图像的清晰度。
问题二:图像颜色不够美观有时候,我们在绘制图像时发现颜色不够美观,难以准确传达所要表达的信息。
为了解决这个问题,我们可以使用MATLAB提供的colorbar函数来调整图像的颜色映射。
通过选择合适的颜色映射方式,我们可以让图像的颜色更加鲜艳、明亮,提高图像的观赏性和可读性。
问题三:图像尺寸不符合要求有时候,我们在绘制图像时发现图像的尺寸过大或过小,不符合我们的要求。
为了解决这个问题,我们可以使用MATLAB提供的resize函数来调整图像的尺寸。
通过设置合适的缩放比例,我们可以将图像的尺寸调整到符合要求的大小,以便更好地展示图像的细节和特征。
问题四:图像坐标轴显示不正确有时候,我们在绘制图像时发现坐标轴的刻度和标签显示不正确,难以准确表示数据的范围。
为了解决这个问题,我们可以使用MATLAB提供的axis函数来设置坐标轴的显示范围和刻度。
通过设置合适的显示范围和刻度间隔,我们可以让坐标轴更加准确地表示数据的分布和变化趋势。
问题五:图像细节显示不清楚有时候,我们在绘制图像时发现细节部分显示不清楚,无法准确表达图像的特征。
为了解决这个问题,我们可以使用MATLAB提供的zoom函数来放大图像的细节部分。
通过调整放大比例和显示参数,我们可以让图像的细节部分更加清晰可见,以便更好地观察和分析图像所包含的信息。
关于matlab的一些画图技巧及希腊字母下标

matlab中如何在指定一点画一个填充颜色的小圆plot(1,1,'r.','markersize',50)二维作图绘图命令plot绘制x-y坐标图;loglog命令绘制对数坐标图;semilogx和semilogy命令绘制半对数坐标图;polor命令绘制极坐标图.基本形式如果y是一个向量,那么plot(y)绘制一个y中元素的线性图.假设我们希望画出y=[0., 0.48, 0.84, 1., 0.91, 6.14 ]则用命令:plot(y)它相当于命令:plot(x, y),其中x=[1,2,…,n]或x=[1;2;…;n],即向量y的下标编号, n为向量y的长度Matlab会产生一个图形窗口,显示如下图形,请注意:坐标x和y是由计算机自动绘出的.图4.1.1.1 plot([0.,0.48,0.84,1.,0.91,6.14])上面的图形没有加上x轴和y轴的标注,也没有标题.用xlabel,ylabel,title 命令可以加上.如果x,y是同样长度的向量,plot(x,y)命令可画出相应的x元素与y元素的x-y坐标图.例:x=0:0.05:4*pi; y=sin(x); plot(x,y)grid on, title(' y=sin( x )曲线图' )xlabel(' x = 0 : 0.05 : 4Pi ')结果见下图.图4.1.1.2 y=sin(x)的图形title图形标题xlabel x坐标轴标注ylabel y坐标轴标注text标注数据点grid给图形加上网格hold保持图形窗口的图形表4.1.1.1 Matlab图形命令多重线在一个单线图上,绘制多重线有三种办法.第一种方法是利用plot的多变量方式绘制:plot(x1,y1,x2,y2,...,xn,yn)x1,y1,x2,y2,...,xn,yn是成对的向量,每一对x, y在图上产生如上方式的单线.多变量方式绘图是允许不同长度的向量显示在同一图形上.第二种方法也是利用plot绘制,但加上hold on/off命令的配合:plot(x1,y1)hold onplot(x2,y2)hold off第三种方法还是利用plot绘制,但代入矩阵:如果plot用于两个变量plot(x,y),并且x,y是矩阵,则有以下情况:(1)如果y是矩阵,x是向量,plot(x,y)用不同的画线形式绘出y的行或列及相应的x向量,y的行或列的方向与x向量元素的值选择是相同的.(2)如果x是矩阵,y是向量,则除了x向量的线族及相应的y向量外,以上的规则也适用.(3)如果x,y是同样大小的矩阵,plot(x,y)绘制x的列及y相应的列.还有其它一些情况,请参见Matlab的帮助系统.线型和颜色的控制如果不指定划线方式和颜色,Matlab会自动为您选择点的表示方式及颜色.您也可以用不同的符号指定不同的曲线绘制方式.例如:plot(x,y,'*') 用'*'作为点绘制的图形.plot(x1,y1,':',x2,y2,'+') 用':'画第一条线,用'+'画第二条线.线型、点标记和颜色的取值有以下几种:线型点标记颜色-实线.点y黄:虚线o小圆圈m棕色-.点划线x叉子符c青色--间断线+加号r红色*星号g绿色s方格b蓝色d菱形w白色^朝上三角k黑色v朝下三角> 朝右三角< 朝左三角p五角星h六角星表4.1.3.1线型和颜色控制符如果你的计算机系统不支持彩色显示,Matlab将把颜色符号解释为线型符号,用不同的线型表示不同的颜色.颜色与线型也可以一起给出,即同时指定曲线的颜色和线型.例如:t=-3.14:0.2:3.14;x=sin(t); y=cos(t);plot(t,x, '+r',t,y, '-b')图4.1.3.1不同线型、颜色的sin,cos图形对数图、极坐标图及条形图loglog、semilogx、semilogy和polar的用法和plot相似.这些命令允许数据在不同的graph paper上绘制,例如不同的坐标系统.先介绍的fplot是扩展来的可用于符号作图的函数.●fplot(fname,lims)绘制fname指定的函数的图形.●polar( theta, rho)使用相角theta为极坐标形式绘图,相应半径为rho,其次可使用grid命令画出极坐标网格.●loglog 用log10-log10标度绘图.●semilogx用半对数坐标绘图,x轴是log10,y是线性的.●semilogy用半对数坐标绘图,y轴是log10,x是线性的.●bar(x)显示x向量元素的条形图,bar不接受多变量.●hist绘制统计频率直方图.●histfit(data,nbins)绘制统计直方图与其正态分布拟合曲线.fplot函数的绘制区域为lims=[xmin,xmax],也可以用lims=[xmin,xmax,ymin,ymax]指定y轴的区域.函数表达式可以是一个函数名,如sin,tan等;也可以是带上参数x的函数表达式,如sin(x),diric(x,10);也可以是一个用方括号括起的函数组,如[sin, cos].例1:fplot('sin',[0 4*pi])例2:fplot('sin(1 ./ x)', [0.01 0.1])例3:fplot('abs(exp(-j*x*(0:9))*ones(10,1))',[0 2*pi],'-o')例4:fplot('[sin(x), cos(x) , tan(x)]',[-2*pi 2*pi -2*pi 2*pi]) %%(图4.1.4.1)图4.1.4.1 sin,cos,tan函数图形图4.1.4.2半对数图下面介绍的是其它几个作图函数的应用.例5:半对数坐标绘图t=0.001:0.002:20;y=5 + log(t) + t;semilogx(t,y, 'b')hold onsemilogx(t,t+5, 'r') %% (图4.1.4.2)例6:极坐标绘图t=0:0.01:2*pi;polar(t,sin(6*t)) %% (图4.1.4.3)图4.1.4.3极坐标绘图图4.1.4.4正态分布的统计直方图与其正态分布拟合曲线例7:正态分布图我们可以用命令normrnd生成符合正态分布的随机数.normrnd(u,v,m,n)其中,u表示生成随机数的期望,v代表随机数的方差.运行:a=normrnd(10,2,10000,1);histfit(a) %% (图4.1.4.4)我们可以得到正态分布的统计直方图与其正态分布拟合曲线.例8:比较正态分布(图4.1.4.5(1))与平均分布(图4.1.4.5(2))的分布图:yn=randn(30000,1); %%正态分布x=min(yn) : 0.2 : max(yn);subplot(121)hist(yn, x)yu=rand(30000,1); %%平均分布subplot(122)hist(yu, 25)4.1.4.5(1) 4.1.4.5(2)图4.1.4.5正态分布与平均分布的分布图在绘图过程中,经常要把几个图形在同一个图形窗口中表现出来,而不是简单地叠加(例如上面的例8).这就用到函数subplot.其调用格式如下:subplot(m,n,p)subplot函数把一个图形窗口分割成m×n个子区域,用户可以通过参数p 调用个各子绘图区域进行操作.子绘图区域的编号为按行从左至右编号.例9:绘制子图x=0:0.1*pi:2*pi;subplot(2,2,1)plot(x,sin(x),'-*');title('sin(x)');subplot(2,2,2)plot(x,cos(x),'--o');title('cos(x)');subplot(2,2,3)plot(x,sin(2*x),'-.*');title('sin(2x)');subplot(2,2,4);plot(x,cos(3*x),':d')title('cos(3x)')得到图形如下:图4.1.5.1子图利用二维绘图函数patch,我们可绘制填充图.绘制填充图的另一个函数为fill.下面的例子绘出了函数humps(一个Matlab演示函数)在指定区域内的函数图形.例10:用函数patch绘制填充图fplot('humps',[0,2],'b')patch([0.5 0.5:0.02:1 1],[0 humps(0.5:0.02:1) 0],'r');hold offtitle('A region under an interesting function.')grid图4.1.6.1填充图我们还可以用函数fill来绘制类似的填充图.例11:用函数fill绘制填充图x=0:pi/60:2*pi;y=sin(x);x1=0:pi/60:1;y1=sin(x1);plot(x,y,'r');fill([x1 1],[y1 0],'g')图4.1.6.2填充图三维作图mesh(Z)语句可以给出矩阵Z元素的三维消隐图,网络表面由Z坐标点定义,与前面叙述的x-y平面的线格相同,图形由邻近的点连接而成.它可用来显示用其它方式难以输出的包含大量数据的大型矩阵,也可用来绘制Z变量函数.显示两变量的函数Z=f(x,y),第一步需产生特定的行和列的x-y矩阵.然后计算函数在各网格点上的值.最后用mesh函数输出.下面我们绘制sin(r)/r函数的图形.建立图形用以下方法:x=-8:.5:8;y=x';x=ones(size(y))*x;y=y*ones(size(y))';R=sqrt(x.^2+y.^2)+eps;z=sin(R)./R;mesh(z) %% 试运行mesh(x,y,z),看看与mesh(z)有什么不同之处?各语句的意义是:首先建立行向量x,列向量y;然后按向量的长度建立1-矩阵;用向量乘以产生的1-矩阵,生成网格矩阵,它们的值对应于x-y坐标平面;接下来计算各网格点的半径;最后计算函数值矩阵Z.用mesh函数即可以得到图形.图4.2.1三维消隐图第一条语句x的赋值为定义域,在其上估计函数;第三条语句建立一个重复行的x矩阵,第四条语句产生y的响应,第五条语句产生矩阵R(其元素为各网格点到原点的距离).用mesh方法结果如上.另外,上述命令系列中的前4行可用以下一条命令替代:[x, y]=meshgrid(-8:0.5:8)(1) meshc与函数mesh的调用方式相同,只是该函数在mesh的基础上又增加了绘制相应等高线的功能.下面来看一个meshc的例子:[x,y]=meshgrid([-4:.5:4]);z=sqrt(x.^2+y.^2);meshc(z) %% 试运行meshc(x,y,z),看看与meshc(z)有什么不同之处?我们可以得到图形:图4.2.2.1 meshc 图地面上的圆圈就是上面图形的等高线.(2)函数meshz与mesh的调用方式也相同,不同的是该函数在mesh函数的作用之上增加了屏蔽作用,即增加了边界面屏蔽.例如:[x,y]=meshgrid([-4:.5:4]);z=sqrt(x.^2+y.^2);meshz(z) %% 试运行meshz(x,y,z),看看与meshz(z)有什么不同之处?我们得到图形:图4.2.2.2 meshz 图(1)在Matlab中有一个专门绘制圆球体的函数sphere,其调用格式如下:[x,y,z]=sphere(n)此函数生成三个(n+1)×(n+1)阶的矩阵,再利用函数surf(x,y,z)可生成单位球面.[x,y,z]=sphere 此形式使用了默认值n=20sphere(n) 只绘制球面图,不返回值.运行下面程序:sphere(30);axis square;我们得到球体图形:图4.2.3.1 球面图若只输入sphere画图,则是默认了n=20的情况.(2) surf函数也是Matlab中常用的三维绘图函数.其调用格式如下:surf(x,y,z,c)输入参数的设置与mesh相同,不同的是mesh函数绘制的是一网格图,而surf绘制的是着色的三维表面.Matlab语言对表面进行着色的方法是,在得到相应网格后,对每一网格依据该网格所代表的节点的色值(由变量c控制),来定义这一网格的颜色.若不输入c,则默认为c=z.我们看下面的例子:%绘制地球表面的气温分布示意图.[a,b,c]=sphere(40);t=abs(c); %求绝对值surf(a,b,c,t);axis equalcolormap('hot')我们可以得到图形如下:图4.2.3.2 等温线示意图(1)坐标轴的控制函数axis,调用格式如下:axis([xmin,xmax,ymin,ymax,zmin,zmax])用此命令可以控制坐标轴的范围.与axis相关的几条常用命令还有:axis auto 自动模式,使得图形的坐标范围满足图中一切图元素axis equal 严格控制各坐标的分度使其相等axis square 使绘图区为正方形axis on 恢复对坐标轴的一切设置axis off 取消对坐标轴的一切设置axis manual 以当前的坐标限制图形的绘制(2)grid on 在图形中绘制坐标网格.grid off 取消坐标网格.(3)xlabel, ylabel, zlabel分别为x轴, y轴, z轴添加标注.title为图形添加标题.以上函数的调用格式大同小异,我们以xlabel为例进行介绍:xlabel('标注文本','属性1','属性值1','属性2','属性值2',…)这里的属性是标注文本的属性,包括字体大小、字体名、字体粗细等.例如:[x, y]=meshgrid(-4:.2:4);R=sqrt(x.^2+y.^2);z=-cos(R);mesh(x,y,z)xlabel('x\in[-4,4]','fontweight','bold');ylabel('y\in[-4,4]','fontweight','bold');zlabel('z=-cos(sqrt(x^2+y^2))','fontweight','bold');title('旋转曲面','fontsize',15,'fontweight','bold','fontname','隶书');图4.2.4.1添加标注以上各种绘图方法的详细用法,请看联机信息.对平面上n个点:在平面直线族{为实数}中寻求一条直线,使得散点到与散点相对应的在直线上的点之间的纵坐标的误差的平方和最小,用微积分的方法可得:所求得的这条直线:称为回归直线.例:已知如下点列,求其回归直线,并计算最小误差平方和.x0.10.11.12.13.14.15.16.17.18.2.21.23y4243.54545.54547.5495350555560参考的程序如下:x=[0.1 0.11 .12 .13 .14 .15 .16 .17 .18 .2 .21 .23]; y=[42 43.5 45 45.5 45 47.5 49 53 50 55 55 60]; n=length(x);xb=mean(x);yb=mean(y);x2b=sum(x.^2)/n;xyb=x*y'/n;b=(xb*yb-xyb)/(xb^2-x2b);a=yb-b*xb;y1=a+b.*x;plot(x,y,'*',x,y1);serror=sum((y-y1).^2)Matlab中下标及希腊字母很多时候都要在matlab画图的时候添加一些公式符号之类的,有一些特殊的字符并不能直接从键盘上输入,比如希腊字母等等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2)坐标轴控制:MATLAB的缺省方式是在绘图时,将所在的坐标系也画出
来,为隐去坐标系,可用axis off;axis on则显示坐标轴
(缺省值).
3)通常MATLAB的坐标系是长方形,长宽比例大约是4:3,为了得到一个
正方形的坐标系可用:axis square
4)坐标系横纵轴的比例是自动设置的,比例可能不一样,要得到相同比例
'MarkerFaceColor','y',... %设置标记点填充颜色为黄色
'MarkerSize',10) %设置标记点的尺寸为10
绘出图形如下:
00.511.522.533.5
-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
34
4.双Y轴绘图:plotyy()函数.
其调用格式为:
plotyy(x1,y1,x2,y2)------绘制由x1,y1和x2,y2确定的两组曲线,其中x1,
y1的坐标轴在图形窗口的左侧,x2,y2的坐标轴在
图形窗口的右侧.
Plotyy(x1,y1,x2,y2, 'function1','function2')------功能同上,function是指那些
5.打开图形窗口的方法有三种:
1)调用绘图函数时自动打开;
2)用File---New---Figure新建;
3)figure命令打开,close命令关闭.
在运行绘图程序前若已打开图形窗口,则绘图函数不再打开,而直接利用已
打开的图形窗口;若运行程序前已存在多个图形窗口,并且没有指定哪个窗
口为当前窗口时,则以最后使用过的窗口为当前窗口输出图形.
6.窗口中的图形打印:用图形窗口的File菜单中的Print项.
7.可以在图形窗口中设置图形对象的参数.具体方法是在图形窗口的Edit菜
单中选择Properties项,打开图形对象的参数设置窗口,可以设置对象的属
性.
二.坐标系
1.一个图形必须有其定位系统,即坐标系;
2.在一个图形窗口中可以有多个坐标系,但只有一个当前的坐标系;
数.
1)semilogx( )------绘制以X轴为对数坐标轴的对数坐标图.
其调用格式为:semilogx(x,y,'属性选项')
其中属性选项同plot函数.
该函数只对横坐标进行对数变换,纵坐标仍为线性坐标.
2)semilogy( )------绘制以Y轴为对数坐标轴的对数坐标图.
其调用格式为:semilogy(x,y,'属性选项')
3.每个坐标系都有唯一的标识符,即句柄值;
4.当前坐标系句柄可以由MATLAB函数gca获得;
5.使某个句柄标识的坐标系成为当前坐标系,可用如下函数:axes(h) h为指
定坐标系句柄值.
6.一些有关坐标轴的函数:
1)定义坐标范围:一般MATLAB自动定义坐标范围,如用户认为设定的不
合适,可用:axis([Xmin, Xmax, Ymin, Ymax])来重新设定;
该函数只对纵坐标进行对数变换,横坐标仍为线性坐标.
35
3)loglog( )------绘制X,Y轴均为对数坐标轴的图形.
其调用格式为:loglog(x,y,'属性选项')
该函数分别对横,纵坐标都进行对数变换.
例:x=0:0.1:6*pi;
y=cos(x/3)+1/9;
subplot(221), semilogx(x,y);
色,不同的线型及标记点表示出来.这些选项如下表所示:
各种颜色属性选项
选项意义选项意义
'r'红色'm'粉红
'g'绿色'c'青色
32
'b'兰色'w'白色
'y'黄色'k'黑色
各种线型属性选项
选项意义选项意义
'-'实线'--'虚线
':'点线'-.'点划线
各种标记点属性选项
选项意义选项意义
'.'用点号绘制各数据点'^'用上三角绘制各数据点
x=x';
y=y';
figure
31
plot(x,y)
在这个例子中,x------ 3x101,y------3x101,所以第一个plot按列画出
101条曲线,每条3个点;而x'------101x3,y'------ 101x3,所以第二个plot
按列画出3条曲线,每条101个点.
012345678
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
012345678
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
3.多组变量绘图:plot(x1, y1,选项1, x2, y2,选项2,……)
上面的plot格式中,选项是指为了区分多条画出曲线的颜色,线型及标记点
而设定的曲线的属性.MATLAB在多组变量绘图时,可将曲线以不同的颜
例如:极坐标模型为:3145/)/)cos((+ =θρ, ],[πθ80∈则绘出极坐标图
的程序为:theta=0:0.1:8*pi;
p=cos((5*theta)/4)+1/3;
polar(theta,p)
0.5
1
1.5
30
210
60
240
90
270
120
300
150
330
1800
四.绘制多个子图:subplot( )函数
色的'+'号绘制曲线.
注意:1)表示属性的符号必须放在同一个字符串中;
2)可同时指定2~3个属性;
3)与先后顺序无关;
4)指定的属性中,同一种属性不能有两个以上.
例:t=0:0.1:2*pi;
y1=sin(t);
y2=cos(t);
y3=sin(t).*cos(t);
plot(t,y1, '-r',t,y2, ':g',t,y3, '*b')
该程序还可以按下面的方式写:
t=0:0.1:2*pi;
y1s(t);
plot(t,y1, '-r')
hold on
plot(t,y2, ':g')
plot(t,y3, '*b')
hold off
注:在MATLAB中,如画图前已有打开的图形窗口,则再画图系统将自动
MATLAB
受到控制界广泛接受的一个重要原因是因为它提供了方便的绘图
功能.本章主要介绍2维图形对象的生成函数及图形控制函数的使用方法,还将
简单地介绍一些图形的修饰与标注函数及操作和控制MATLAB各种图形对象的
方法.
第一节图形窗口与坐标系
一.图形窗口
1.MATLAB在图形窗口中绘制或输出图形,因此图形窗口就像一张绘图纸.
subplot(222), semilogy(x,y);
subplot(223), loglog(x,y);
4)MATLAB还提供了一个实用的函数:logspace( )函数,可按对数等间距地分
布来产生一个向量,其调用格式为:
x=logspace(x1,x2,n)
这里,x1表示向量的起点;x2表示向量的终点;n表示需要产生向量点的
y(2,:)=0.3*sin(x);
plot(x,y)
或者还可以这样用:
x=0:pi/50:2*pi;
y=[ sin(x); 0.6*sin(x); 0.3*sin(x)];
plot(x,y)
01234567
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
3)如果x,y是同样大小的矩阵,则plot(x,y)绘出y中各列相应于x中各列的
擦掉坐标系中已有的图形对象,但设置了hold on后,可以保持坐标系中已绘出
的图形.
33
01234567
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
图(a)
还可以进一步设置包括线的宽度(LineWidth),标记点的边缘颜色
(MarkerEdgeColor),填充颜色(MarkerFaceColor)及标记点的大小(MarkerSize)
2.在MATLAB下,每一个图形窗口有唯一的一个序号h,称为该图形窗口的
句柄.MATLAB通过管理图形窗口的句柄来管理图形窗口;
3.当前窗口句柄可以由MATLAB函数gcf获得;
4.在任何时刻,只有唯一的一个窗口是当前的图形窗口(活跃窗口);
figure(h)----将句柄为h的窗口设置为当前窗口;
图形.
例:x(1,:)=0:pi/50:2*pi;
x(2,:)=pi/4:pi/50:2*pi+pi/4;
x(3,:)=pi/2:pi/50:2*pi+pi/2;
y(1,:)=sin(x(1,:));
y(2,:)=0.6*sin(x(2,:));