matlab,这种图matlab怎么画函数图像?

Matlab怎么绘制离散图? matlab画散点图的教程
互联网 & 04-26 08:54:50 & 作者:佚名 &
Matlab怎么绘制离散图?画离散图需要使用函数plot(),及泥潭我们就俩给大家介绍两种matlab画散点图的方法,图文教程很详细,需要的朋友可以参考下
有时我们需要用Matlab画离散点图,而平时大多数用plot()画的是线,那么如何利用Matlab里面的函数plot()进行画离散图呢,,还有没有其他的方法呢?下面根据自己平时的画图经验总结如下,仅供大家学习交流,有不足之处请指正。
1、打开MATLAB软件,准备开始作图
1、在命令窗口,编写离散点向量,例如离散点(X,Y),X= [1 3 5 7 2 9 3 6 2 8],Y= [2&1&4&5&6&15&2&5&7 10],如果我们直接采用Plot作图,画出来的是折线。
2、对Plot显示样式进行设置,如:plot(X,Y,'k*'),'k'表示显示黑色颜色,'*'表示点为星号显示
1、也比较方便,清除之前在命令行的代码,直接在命令行输入:clc,然后按回车键。
2、重新在命令行输入离散点,采用函数scatter进行画离散点,如:scatter(X,Y,'r'),'r'表示离散点显示为红色。
3、比较一下两种方法是否一样,用hold on ,使两个图在一副图上面显示出来。发现标记的离散点是在同一个位置的!
注意事项:MATLAB版本不同,显示的图结果样式可能存在一点差异。
相关推荐:
大家感兴趣的内容
12345678910
最近更新的内容您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
第三章_Matlab图形绘制综述.ppt 145页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
你可能关注的文档:
··········
··········
2、griddata函数,用来产生经插值后均匀间隔数据作图。常用的调用方法是:[XI,YI,ZI] = griddata(x,y,z,XI,YI,’method’),其中x,y,z来自关系式z=f(x,y),也可以是离散的数据点,ZI是有XI和YI插值后得到的对应点。其中method可以是linear,cubic和nearest。 V1 = [1
0]; x = V1(:, 1);y = V1(:, 2);z = V1(:, 3); xmin = min(x); xmax = max(x); ymin = min(y); ymax = max(y); x0 = linspace(xmin, xmax, 20); y0 = linspace(ymin, ymax, 20); [x0, y0] = meshgrid(x0, y0); z0 = griddata(x, y, z, x0, y0, 'v4'); view(3); plot3(x, y, z, 'r.', 'MarkerSize', 20); plot3(x0, y0, z0, 'k.'); col = zeros(size(z0)); col(:, end) = 1;mesh(x0, y0, z0, col) 示例1: x=10*(0.5-rand(1000,1)); y=10*(0.5-rand(1000,1)); z=sqrt(x.*x+y.*y).*(9.995+rand(0); plot3(x,y,z,'rp','markerSize',4); [xx,yy]=meshgrid(linspace(min(x),max(x)),linspace(min(y),max(y))); zz=griddata(x,y,z,xx,yy,'cubic'); mesh(xx,yy,zz); 示例2: 示例3: x = rand(100,1)*4-2; y = rand(100,1)*4-2; z = x.*exp(-x.^2-y.^2); ti = -2:.25:2;
[xi,yi] = meshgrid(ti,ti);zi = griddata(x,y,z,xi,yi); mesh(xi,yi,zi), hold on, plot3(x,y,z,'o'), hold off 3、TriScatteredInterp函数,该函数可以看作是griddata的升级版,可以取代griddata对离散数据点进行插值。主要用于不规则数据点的插值。主要调用方法:F= TriScatteredInterp(x,y,z),相当于定义了一个关于x,y,z的插值函数。示例1: x=10*(0.5-rand(1000,1)); y=10*(0.5-rand(1000,1)); %生成随机数据 z=sqrt(x.*x+y.*y).*(9.995+rand(0); plot3(x,y,z,‘rp’,‘markerSize’,4); %绘制三维散点图F=TriScatteredInterp(x,y,z); %可以理解为定义了一个函数F(.) [xx,yy]=meshgrid(linspace(min(x),max(x)),linspace(min(y),max(y))); zz=F(xx,yy); %把x,y的坐标输入其中,可以计算出插值的z维度数值 mesh(xx,yy,zz); %然后可以采用常规的方法绘制曲面 注:1、对F还可以设置方法F.method=‘nature’/’linear ’/’nearest’,前两个针对连续曲线。2、类似的一些地形图的绘制也是通过这种插值的方法进行绘制。 示例2: z = x.^2 + y.^2;
F = TriScatteredInterp(x,y,z);
[xi,yi] = meshgrid(-0.3:.02:0.3, -0.:0.0688);
zi = F(xi,yi);
mesh(xi,yi,zi)
xlabel('Interpolated surface', 'fontweight','b'); zi = xi.^2 + yi.^2;
mesh(xi,yi,zi)
(8)四维表现图 针对v=v
正在加载中,请稍后...后使用快捷导航没有帐号?
只需一步, 快速开始
只需一步,快速开始
查看: 676|回复: 6
请问各位类似这样的圆图用matlab怎么画?附问题和数据
在线时间 小时
我有三列数据,一列是φs,一列是θs,然后一列是在特定的φs和θs下的值(HH)。也就是固定了φs和θs之后才有HH的值。我用程序跑的结果,是先for循环φs从0度到180度,步长为1度(即总共181个φs),然后内循环θs从0度到90度,步长为1度,即一个φs对应91个不同的θs,然后对应相应的值HH。
要画的图是下面这样的圆形图,横坐标是sinθs*cosφs, 纵坐标是sinθs*sinφs,colorbar表示值HH的大小。请问怎么画?用什么函数画?
附件里是具体的值,请教方法。谢谢
我看过提问的智慧:
自己思考时长(天):
登录后查看更多精彩内容~
才可以下载或查看,没有帐号?
我有三列数据,一列是φs,一列是θs,然后一列是在特定的φs和θs下的值(HH)。也就是固定了φs和θs之后才有HH的值。我用程序跑的结果,是先for循环φs从0度到180度,步长为1度(即总共181个φs),然后内循环θs从0度到90度,步长为1度,即一个φs对应91个不同的θs,然后对应相应的值HH。
要画的图是下面这样的圆形图,横坐标是sinθs*cosφs, 纵坐标是sinθs*sinφs,colorbar表示值HH的大小。请问怎么画?用什么函数画?
附件里是具体的值,请教方法。谢谢
16:05 上传
点击文件名下载附件
341.76 KB, 下载次数: 3
密码修改失败请联系qq:
在线时间 小时
求助,有没有人知道
密码修改失败请联系qq:
在线时间 小时
求助,有没有人知道
密码修改失败请联系qq:
在线时间 小时
求助,有没有人知道
密码修改失败请联系qq:
在线时间 小时
设变量C第一列为对应的横坐标x=sinθs*cosφs,第二列为对应纵坐标y=sinθs*sinφs,设第三列为对应HH,把其插值到已生成的规则对应格点上,然后用pcolor函数绘图即可,具体如下
x1 = -1.2 : 0.02 : 1.2;
y1 = -0.5: 0.02 : 0.5;
[X1, Y1] = meshgrid(x1, y1);
HH1=griddata(C(:,1),C(:,2),C(:,3),X1,Y1);&&%把反射率值插值到已生成的对应格点上
pcolor(X1,Y1,HH1);
shading flat
密码修改失败请联系qq:
在线时间 小时
%设变量C第一列为对应的横坐标x=sinθs*cosφs,第二列为对应纵坐标y=sinθs*sinφs,设第三列为对应HH,把其插值到已生成的规则对应格点上,然后用pcolor函数绘图即可,具体如下
C(:,1)=cos(C1(:,1)*pi/180).*sin(C1(:,2)*pi/180);
C(:,2)=sin(C1(:,1)*pi/180).*sin(C1(:,2)*pi/180);
C(:,3)=C1(:,3);
x1 = -1.2 : 0.02 : 1.2;
y1 = -1: 0.02 : 1;
[X1, Y1] = meshgrid(x1, y1);
HH1=griddata(C(:,1),C(:,2),C(:,3),X1,Y1);&&%把反射率值插值到已生成的对应格点上
pcolor(X1,Y1,HH1);
shading flat
密码修改失败请联系qq:
在线时间 小时
%设变量C第一列为对应的横坐标x=sinθs*cosφs,第二列为对应纵坐标y=sinθs*sinφs,设第三列为对应HH,把 ...
厉害,谢谢!
密码修改失败请联系qq:这个图用MATLAB怎么画?_百度知道
这个图用MATLAB怎么画?
就是这个图。
我有更好的答案
用pcolor绘制后加一句shading flat即可,旁边的颜色条是colorbar ——————————————————我给个例子,你自己把数据改掉即可。%图11[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.1,.55,.2,.35])pcolor(x,y,sin(y)-x.^2-2)xlabel('0h')shading flatcaxis([-4,4])%图12[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.35,.55,.2,.35])pcolor(x,y,sin(y)-x.^2-1)xlabel('1h')shading flatcaxis([-4,4])%图13[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.6,.55,.2,.35])pcolor(x,y,sin(y)-x.^2-0)xlabel('2h')shading flatcaxis([-4,4])%图21[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.1,.1,.2,.35])pcolor(x,y,sin(y)-x.^2+3)shading flatxlabel('3h')caxis([-4,4])%图22[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.35,.1,.2,.35])pcolor(x,y,sin(y)-x.^2+2)shading flatxlabel('4h')caxis([-4,4])%图23[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.6,.1,.2,.35])pcolor(x,y,sin(y)-x.^2+1)shading flatxlabel('5h')caxis([-4,4])%色条axes('position',[.1,.1,.8,.8])caxis([-4,4]);axis offcolorbar%标题axes('position',[.1,.1,.8,.8])caxis([-4,4]);axis offtitle('地面臭氧浓度动态变化图(mg/m^2)')
采纳率:62%
用pcolor绘制后加一句shading flat即可,旁边的颜色条是colorbar ——————————————————我给个例子,你自己把数据改掉即可。%图11[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.1,.55,.2,.35])pcolor(x,y,sin(y)-x.^2-2)xlabel('0h')shading flatcaxis([-4,4])%图12[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.35,.55,.2,.35])pcolor(x,y,sin(y)-x.^2-1)xlabel('1h')shading flatcaxis([-4,4])%图13[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.6,.55,.2,.35])pcolor(x,y,sin(y)-x.^2-0)xlabel('2h')shading flatcaxis([-4,4])%图21[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.1,.1,.2,.35])pcolor(x,y,sin(y)-x.^2+3)shading flatxlabel('3h')caxis([-4,4])%图22[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.35,.1,.2,.35])pcolor(x,y,sin(y)-x.^2+2)shading flatxlabel('4h')caxis([-4,4])%图23[x,y]=meshgrid(-1:.1:1,-3*pi:.1*pi:3*pi);axes('position',[.6,.1,.2,.35])pcolor(x,y,sin(y)-x.^2+1)shading flatxlabel('5h')caxis([-4,4])%色条axes('position',[.1,.1,.8,.8])caxis([-4,4]);axis offcolorbar%标题axes('position',[.1,.1,.8,.8])caxis([-4,4]);axis offtitle('地面臭氧浓度动态变化图(mg/m^2)')
本回答被网友采纳
f = @(t) sin(t)./t;t = -10 : 0.1 :10;x = -3*t+5;y1 = f(x); y2 = f(t);plot(t, y2, 'ro', x, y1, 'k-');
为您推荐:
其他类似问题
您可能关注的内容
matlab的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。403 Forbidden
403 Forbidden
You don't have permission to access the URL on this server.Powered by Tengine

我要回帖

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

 

随机推荐