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

绝世美人儿
999次浏览
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

-


-


-


-


-


-


-


-