matlab程序绘图_第1页
matlab程序绘图_第2页
matlab程序绘图_第3页
matlab程序绘图_第4页
matlab程序绘图_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Matlab绘图我们主要讲 .m文件编程绘图一、基本格式function aaaplot(参数)画图函数function parabolax=-2:0.1:2;y=x.2;plot(x,y)-2-1.5-1-0.500.511.5200.511.522.533.54二、基本设置function parabolaaxis(-3,3,-1,5)set(gcf,position,0,0,1200,800) set(gca,FontName,default,FontSize,30,FontWeight,bold) box onx=-2:0.1:2;y=x.2;scatter(-3,4.7,5,w,d,

2、filled)hold onscatter(-3,-0.5,5,w,d,filled)hold onscatter(3,4.7,5,w,d,filled)hold onscatter(3,-0.5,5,w,d,filled)hold onplot(x,y,-r,linewidth,1.5)-3-2-10123-1012345注意:在同一个图中画多次画图时应使用hold on语句,否则后面的会覆盖前面的三、常用的画布、图、坐标轴、线条的设置set(gca,LineWidth,2.5) %设置坐标轴的粗细set(gca,XMinorTick,on) %设置x轴最小刻度set(gca,YMinorT

3、ick,on) %设置y轴最小刻度set(gca,ticklength,0.025 0.0125); %设置小刻度长度set(gca,tickdir,out) %将小刻度放在坐标轴外面set(gca,position,0.15,0.15,0.80,0.80) %设置图形占画布的比例set(gcf,position,0,0,1200,800) %设置画布的大小 box on %打开图框xlabel(eta,FontSize,35,FontWeight,bold) % 设置x坐标轴名称 ylabel(dN_ch/deta,FontSize,35,FontWeight,bold) % 设置y坐标轴名

4、称线型设置颜色设置标记类型设置-r红色实线-.g绿色点划线k,o,filled黑色填充的小圆圈四、画图中的一些技巧应用1、数据的导入A=importdata(0-3.dat); number=length(A); %计算矩阵A的行数,将行数记为numberexp_x1=A(1:number,1); %将A矩阵的第一列放入到exp_x1数组中exp_y1=A(1:number,2); %将A矩阵的第二列放入到exp_x1数组中wuchax1=A(1:number,3); %将A矩阵的第三列放入到exp_x1数组中wuchay1=A(1:number,4); %将A矩阵的第四列放入到exp_x1数

5、组中 %导入实验数据文件,数据放入矩阵A中。还有其它的方式导入2、利用导入的数据画图scatter(exp_x1,exp_y1,250,r,o,filled) %画实验点for i=1:1:number plot(exp_x1(i),exp_x1(i),exp_y1(i)-wuchay1(i),exp_y1(i)+wuchay1(i),k,linewidth,2.5) end%画误差棒B=importdata(19.6gev_cal.dat) ; % 导入理论数据,放入B矩阵中 cal_x1=B(1:1000,1); % 将第一列数据放到cal_x1中 cal_y1=B(1:1000,2);

6、%将第二列数据放到cal_y1中hold onfor c=1:1:1000 cal_x11(c)=cal_x1(c); %循环可以设计画任意个点(例如800个) cal_y11(c)=cal_y1(c);endplot(cal_x11,cal_y11,-k,linewidth,2.5) %画理论曲线3、在图中任意地方写入字符text(-4.8,765,Au-Au ,Fontsize,12,FontWeight,bold,Fontname,Times New Roman )指定写的坐标要写的字符设置字号字体加粗设置字体名称还有gtext函数可以在画图过程中点击选择位置4、任意写入刻度值set(g

7、ca,xticklabel, ) %不写x坐标轴上的刻度值 set(gca,yticklabel,Two,Four,Five,Seven)set(gca,yticklabel,0, ,100, ,200) %只显示0,100,200这三个刻度值不显示的刻度值用空格表示5、数组调用pp=10,15,40,1.0set(gca,FontName,default,FontSize,pp(1))ylabel(dN_ch/deta,FontSize,pp(2) )scatter(exp_x1,exp_y1,pp(3),k,p,filled)set(gca,linewidth,pp(4) po1=0.1,

8、0.56,0.4,0.42 set(gca,position,po1) po2=0.56,0.56,0.4,0.42 set(gca,position,po2)M1=-6.0,6.0,0,900 axis(M1)4、写图例a=linspace(820,440,4);b=3.5,3.9scatter(b(1),a(1),pp(3),k,filled) text(b(2),a(1),200GeV,Fontsize,pp(1),FontWeight,bold,Fontname,Times New Roman) scatter(b(1),a(2),pp(3),k,d,filled) text(b(2)

9、,a(2),130GeV,Fontsize,pp(1),FontWeight,bold,Fontname,Times New Roman) scatter(b(1),a(3),pp(3),k,p,filled) text(b(2),a(3),62.4GeV,Fontsize,pp(1),FontWeight,bold,Fontname,Times New Roman) scatter(b(1),a(4),pp(3),k,v,filled) text(b(2),a(4),19.6GeV,Fontsize,pp(1),FontWeight,bold,Fontname,Times New Roman

10、)利用linspace函数将820和440之间平均分成4等分,并将四个值放入a数组中利用scatter和text函数画图例,所需坐标值可用数组值代替五、画子图1、基本结构function aaaaaxis( -6.0,6.0,0,180)subplot(2,2,1)plot(x,y)subplot(2,2,2)plot(x,y)subplot(2,2,3)plot(x,y)subplot(2,2,4)plot(x,y)(第一个子图)(第二个子图)(第三个子图)(第四个子图)subplot(m,n,p)行数列数当前子图序号2、子图相对位置的设置function aaaaaxis( -6.0,6.

11、0,0,180)subplot(2,2,1)set(gca,position,0.1,0.56,0.4,0.42) plot(x,y)subplot(2,2,2)set(gca,position,0.56,0. 56,0.4,0.42)plot(x,y)subplot(2,2,3)set(gca,position,0.1,0. 08,0.4,0.42)plot(x,y)subplot(2,2,4)set(gca,position,0.56,0. 08,0.4,0.42)plot(x,y)3、子图的一些基本设置function aaaasubplot(2,2,1)axis(-6.0,6.0,0,

12、180)set(gca,position,0.1,0.56,0.4,0.42) plot(x,y)subplot(2,2,2)axis(-6.0,6.0,0,180)set(gca,position,0.56,0. 56,0.4,0.42)plot(x,y)subplot(2,2,3)axis(-6.0,6.0,0,180)set(gca,position,0.1,0. 08,0.4,0.42) plot(x,y)subplot(2,2,4)axis(-6.0,6.0,0,180)set(gca,position,0.56,0. 08,0.4,0.42)plot(x,y)4、在同一子图中画多条

13、线function aaaasubplot(2,2,1)axis(-6.0,6.0,0,180)plot(x1,y1)subplot(2,2,1)axis(-6.0,6.0,0,180)plot(x2,y2)subplot(2,2,1)axis(-6.0,6.0,0,180)set(gca,position,0.1,0. 2,0.3,0.3)plot(x3,y3)subplot(2,2,2)axis(-6.0,6.0,0,180)set(gca,position,0.6,0. 2,0.3,0.3)plot(x,y)七、程序举例function AuAuaxis(-6.0,6.0,0,800)s

14、et(gca,FontName,default,FontSize,15) set(gca,LineWidth,1) set(gca,XMinorTick,on) set(gca,YMinorTick,on) set(gca,ticklength,0.025 0.0125); set(gcf,position,0,0,600,800) box on hold onlegend(boxoff); hold on%*以上是一些基本设计*%*开始画图*subplot(2,2,1) axis(-6.0,6.0,0,10) m=-6:0.5:6; n=m+2;plot(m,n,-k,LineWidth,1

15、) hold on subplot(2,2,1) axis(-6.0,6.0,0,10) set(gca,position,0.1,0.56,0.4,0.42) x=-6:0.5:6; y=sin(x)+5; plot(x,y,-r,LineWidth,1) hold on box on %*以上是第一组数据*subplot(2,2,2) axis(-6.0,6.0,0,800) set(gca,position,0.56,0.56,0.4,0.42)plot(-5:1:5)box on %*以上是第二组数据*subplot(2,2,3) axis(-6.0,6.0,0,800) set(gc

16、a,position,0.1,0.08,0.4,0.42)box on%*以上是第三组数据* subplot(2,2,4) axis(-6.0,6.0,0,800) set(gca,position,0.56,0.08,0.4,0.42) box on %*以上是第四组数据*-6-4-20246012345678910051015-5-4-3-2-1012345-6-4-202460100200300400500600700800-6-4-202460100200300400500600700800注意:1、程序段之间要分隔开来,以便程序太大时容易查错;2、应做好注释;3、同类的设置尽量放在一

17、起;4、要注意语句前后顺序,防止某些设置不起作用;5、某些相同字母的设置大小写应统一,方便使用“查找 替换”功能(例:linewidth LineWidth);6、尽量使用编程语言来画图,少用图形拖动来修改。 subplot(4,3,2:3) 我们的研究中应注意的问题:1、线条宽度最好设为1;2、单个图形,画布最好设为600*400;3、多子图,画布不应大于800*1000;4、字体大小应该和图形大小比例适当,否则有些字会被挤出画布5、经常用的数字设置尽量用数组代替,方便修改;6、图片生成的是.fig图,应手动存储为.eps或.jpeg图,不应用语句直接存。在latex中,会对图片进行压缩,线条太粗,画布太大容易出现图片残缺,原

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论