matlab课设===特殊图形绘制 4

巡山小妖精
698次浏览
2021年02月27日 18:57
最佳经验
本文由作者推荐

-

2021年2月27日发(作者:电视剧家有儿女)





Matlab


特殊图形绘制







利用


matlab


函数提供的特殊绘图 函数来实现区域图、填充图、条形图、直


方图、圆体图、球体、椭球体、



2


维、


3

< br>维)饼图、排列图、二维柄状图、三维


柄状图、


阶梯图、


散点图、


轮廓图、


向量图


(罗盘图;


羽状图、


箭头图、


法线图)



验证如下函数的功能:


s urfnorm,


quiver,


feather,


compass,


contour3,


contour,


plotmatrix,


scatter,


scatter3,


stairs,


stem,


stem3,


pareto,


pie3,


pie,


ellipsoid,


sphere,


cylinder, hist, bar3, bar, fill3, fill, area.


利用具体实例说明


matlab

< br>的各种绘图函数的功能




































































1


软件介绍



............ .................................................. ................. 1


1.1 Matlab


简介



........ .................................................. ............ 1


2 Matlab


绘图


................... .................................................. ....... 1


2.1


区域图的绘制



.............................................. ....................... 1


2.1.1 area


函数介绍


................... .......................................... 2


2.1.2



area


绘制区域图



................. ........................................ 2


2.2


填充图的绘制


...... .................................................. ............ 3


2.2.1


绘图函数


fill,fill3 ............. .......................................... 3


2.2.2



fill,fill3


绘制填充图



........... ........................................ 3


2.3


直方图的绘制



.


............................. ....................................... 4


2.3.1


绘图函数


hist,rose .............. .......................................... 4


2.3.2



hist,rose< /p>


绘制直方图



............ ........................................ 5


2.4


条形图的绘制


< /p>


........................................ ............................ 6


2.4.1


绘图函数


bar,bar3 ............... .......................................... 6


2.4.2



b ar,bar3


绘制直方图


................ .......................................7



2.5


圆体图、球体、椭球体的绘制



... .................................................. . 8


2.5.1



cylind er


绘制圆体图



......... ............................................ 8


2.5.2



sphere


绘制球



................ .......................................... 8


2.5.3



ellipsoid< /p>


绘制椭球



............. ......................................... 9


2.6


二维、三维饼图的绘制


.. .................................................. ....... 10


2.6.1


绘图函数


pie,pie3 ............... ......................................... 10


2.6.2



pie,pie3


绘制饼图



.............. ........................................ 10


2.7


排列图的绘制



.............................................. ...................... 12


2.8

二维、三维柄状图的绘制


.......................... ................................ 12


2.8.1


绘图函数


stem,stem3 ............. ........................................ 133


2.8.2



stem,stem3


绘制柄状图



........... ....................................... 15


2.9


阶梯图的绘制



.............................................. ...................... 16


2.9.1


绘图函数


stairs ................. ......................................... 17


2.9.2



stairs


绘制阶梯图



............... ....................................... 18


2.10


散点图的绘制



............................................. ...................... 18


2.10.1



scatter



sca tter3


绘制散点图



...... .................................... 19


2.10.2



plotmatri x


绘制矩阵的散点图



....... .................................... 19


2.11


轮廓图的绘制


..... .................................................. ........... 18


2.11.1


绘图函数


contour



contour3 .............................................. 18


2.11.2



contour



contour3


绘制轮廓图

< p>


................................ .......... 18


2.12


向量图(罗盘图、羽状 图、箭头图、法线图)的绘制


................................. 20


2. 12.1



compass


绘制罗盘图 、用


feather


绘制羽状图



.


............................. . 20


2.12.2



quiv er


绘制箭头图、用


surfnorm


法线图



.................................. 21





目录







1.


软件介绍






简介





启动


Matlab

< br>后,进入


Matlab


的默认桌面(如上图)

< p>
。第一行为菜单栏,第


二行为工具栏,下面是三个最常用的窗口。右边最大 的是命令窗口(


Command


Window



,左上方前台为工作空间窗口


(workspace )


,后台为当前目录窗口


(Current

< br>Dircstory)


,左下方为命令历史窗口


(Com mand


History)


。左下角还有

一个开始(


Start


)按钮,用于快速启动各类交互界面 、桌面工具和帮助等。



2. Matlab


绘图



2.1


区域图的绘制



2.1.1 area


函数介绍



面域图指令


area


< p>
该指令的特点是:


在图上绘制多条曲线时,


每条曲 线


(除


第一条外)都是把“前”条曲线作基线,再取值绘制而成 。因此,该指令所画的


图形,能醒目地反映各因素对最终结果的贡献份额。


area


的第一输入宗量是单


调变化的自变量。第 二输入宗量是“各因素”的函数值矩阵,且每个“因素”的


数据取列向量形式排放。


第三输入宗量是绘图的基准线值,


只能取标量。

当基准


值为


0


(即以


x


轴为基准线)时,第三输入宗量可以缺省。




1



2.1.2



area


绘制区域图




area:


绘制区域图



area


函数的调用格式如下:



area(Y)


area(X,Y)


area(...,ymin)


area(...,



PropertyName


< p>
,PropertyValue,...)


h=area(...)


实例


2.1.2


区域图示例



Y = [ 1, 5, 3;


3, 2, 7;


1, 5, 3;


2, 6, 1];


area(Y)


grid on


set(gca,'Layer','top')


title ('Stacked Area Plot')





2.1.2


区域图示例




2



2.2


填充图的绘制



2.


2.1


绘图函数


fill,fill3



fill


用于二维填充



fill3


用于三维填色



2.2.2



fill,fill3


绘制填充图





fill


制图程序:



fill


函数的调用格式如下:



fill(X,Y,C)


fill(X,Y,ColorSpec)


fill(X1,Y1,C1,X2,Y2,C2,...)


fill(...,< /p>



PropertyName



,PropertyValue)


h=fill(...)



实例


2.2.2.a


区域图示例



t = (1/16:1/8:1)'*2*pi;


x1=sin(t);


y1=cos(t);


%


八边形顶点



t=(0:1/10:1)'*2*pi;


x2=2+sin(t);


y2=cos(t);


%


十边形顶点



fill(x1,y1,'r',x2,y2,'b')


%


绘制添色多边形



title '


二维填充图示例


'


axis off


text(-0.75,0,'fontn ame{


隶书


} fontsize{32}


八边形


')


text(1.25,0 ,'fontname{


隶书


} fontsize{32}


十边形


') %


文字标注





3






fill3


制图程序:



fill3


函数的调用格式如下:



fill3(X,Y,Z,C)


fill3(X,Y,Z,ColorSpec)


fill3(X1,Y1,Z1,C1,X2,Y2,Z2,C2,...)


fill3(...,



Prope rtyName



,PropertyValue)


h=fill3(...)





实例


2.2.2.b


区域图示例



X=[0 1 1 2;1 1 2 2;0 0 1 1];%


创建四个三角形



Y=[1 1 1 1;1 0 1 0;0 0 0 0];


Z=[1 1 1 1;1 0 1 0;0 0 0 0];


C=[0.5 1 1 0.5;






1 0.5 0.5 0.1667;






0.333 0.333 0.5 0.5];%


色彩着色



fill3(X,Y,Z,C)


title('


三维填充图


')




2.3


直方图的绘制



2.3.1


绘图函数


rose



h ist


rose


用于绘制极坐标系下的直方图


;hist


用来绘制统计直方图。




4




2.3.2



rose



hist


绘制直方图



rose


函数的调用格式如下:



rose(theta)


rose(theta,X)


rose(theta,nbins)


[tout,rout]=rose(...)


极坐标系下的直方图示例


:


theta=2*pi*rand(1,100)


rose(theta)


title('

极坐标系下的直方图


')











hist


函数的调用格式如下:



n=hist(Y)


n=hist(Y,X)


n=hist(Y,nbins)


[n,xout]=hist(...)


笛卡尔坐标系下的直方图示例


:


x=-2.9:0.1:2.9;


y=randn(1000,1)


hist(y,x)


title('


笛卡儿坐标系下的直方图


' )














5



2.4


条形图的绘制



2.4.1


绘图函数


bar,bar3


bar:


绘制二维垂直条形图



bar3:


绘制三维条形图函数



2.4.2



bar,bar3


绘制直方图



bar


函数的调用格式如下:



bar(Y)


bar(X,Y)


bar(...,width)


bar(...,LineSpec)


h=bar(...)


二维条形图示例


:


Y


=


round(rand(5,3)*10); %


随机函数产生


5*3


的数组,对产生的 数据取整



subplot(2,2,1)


bar(Y,'group')


title 'Group'


subplot(2,2,2)


bar(Y,'stack') %


堆型二维垂直条形图



title 'Stack'


subplot(2,2,3)


barh(Y,'stack') %


堆型二维水平条形图



title 'Stack'


subplot(2,2,4)


bar(Y,1.5) %


设定条形的宽度为


1.5


title 'Width = 1.5'




6







bar 3


绘图程序:



bar3


函数的调用格式如下:



bar3(Y)


bar3(X,Y)


bar3(...,width)


bar3(...,< /p>



style



)


bar3(...,LineSpec)


h=bar3(...)


三维条形图示例


:


Y = [1 2 3 4 5 6 7;










1 2 3 4 3 2 1;






7 6 5 4 3 2 1];


subplot(3,2,1)


bar3(Y


,'detached')


title('Detached')


subplot(3,2,2)


bar3(Y


,0.25,'detached')


title('Width = 0.25')


subplot(3,2,3)


bar3(Y


,'grouped')


title('Grouped')


subplot(3,2,4)


bar3(Y


,0.5,'grouped')


title('Width = 0.5')


subplot(3,2,5)


bar3(Y


,'stacked')


title('Stacked')


subplot(3,2,6)


bar3h(Y


,0.3,'stacked')


title('Width = 0.3')




7



2.5


圆体图、球体、椭球体的绘制



2.5.1


用函数


cylinder


来绘制圆柱形图



cylinder


的调用格式:



[X,Y,Z]=cylinder


[X,Y,Z]=cylinder(r)


[X,Y,Z]=cylinder(r,n)


cylinder(...)



实例


2.4.1a


圆柱形图示例:




t=0:pi/10:2*pi;


[x,y,z]=cylinder(2+cos(t),100);


surf(x,y,z)


axis square


title('


圆柱形图示例


')



运行结果:




2.5.2


< br>sphere


绘制球



sphere


函数调用格式:



sphere


sphere(n)



球体函数应用实例:




8







sphere






axis equal




运行结果:


2.5.3


< p>
ellipsoid


绘制椭球


< br>ellipsoid


:绘制椭圆体图形(其实只是产生椭圆体据点)



ellipsoid


调用格式为:



[X,Y,Z]=ellipsoid(xc,yc,zc,xr,yr,zr,n)


[X,Y,Z]=ellipsoid(xc,yc,zc,xr,yr,zr)


ellipsoid(...)



椭圆体数据产生公式如下:



(


Y



y


c

< p>
)


2


(


Z



z


c


)

(


X



xc


)





1



x


r


y


c


z


c




椭圆体示例:



[x y z]=ellipsoid(1,2,3,5,1,10);
















%


椭圆体数据的产生



view(3)


































%


三维视角



surface(x,y,z)


title('


椭圆体:中心点


(1,2,3)


,半径


(5,1,10)')




运行结果:




2



9





2.6


二维、三维饼图的绘制



2.6.1


绘图函数


pie,pie3


饼图指令


pie , pie3


用来表示各元素占总和的百分数。



2.6.2



pie,pie3


绘制饼图




pi e


绘图程序:



pie


函数的调用格式:



Pie(X)


Pie(X,explode)


H=pie(...)



二维饼图示例







x=[1 3 0.5 2.5 2];


subplot(221);


pie(x)%


绘制饼图



subplot(222)


explode=[0 1 0 0 0];


pie(x,explode)%


加上分离的切片



subplot(223)


label={'


一班


' '


二班


' '


三班


' '


四班


' '


五班


'};


pie(x,labe l);%


给每个切片加上标注



subplot(224);


pie(x,explode, label);%


具有分离和自定义标注的功能




10

-


-


-


-


-


-


-


-