Matlab填充功能函数fill
Matlab填充函数fill函数
前两篇文章讲解了matlab的二维绘图功能,包含有plot、fplot、ezplot、plotyy,然后后续还包括有三个特殊的统计学相关的绘图函数,其中有hist、bar、barh、pie、pie3 这几种,但是对于平面绘图中还有一个很重要的函数就是fill填充函数,该函数能够填充任意的形状,比较的灵活。
-
fill函数的主要语法总共有以下几种:
-
fill(X,Y,C); fill(X1,Y1,C1,...,Xn,Yn,Cn); fill(___,Name,Value); fill(ax,___); p = fill(___);
-
第一个语法很明确,就是填充一个区域为一种颜色。fill(X,Y,C)
-
需要绘制一个区域,那么直接将X,Y指定为向量,C指定为颜色。
X = [1,3,9]; Y = [2,5,8]; subplot(1,2,1) fill(X,Y,'r') subplot(1,2,2) fill(X,Y,[1;0.5;0]); % 如上所绘制的图像将是以点[1,2],[3,5],[9,8]三个点连成的区域。 % 对于C参数的设置,可以做文章,用来对颜色进行渐变设置
上面的代码绘制的图形如下图所示:
-
-
如果需要在一个figure中绘制多个区域,那么则需要将X,Y指定为矩阵即可,每一列看成一个图形。
X = [1 5;3 10;9 4]; Y = [2 3;5 1;8 1]; C = [1 0;0.5 0.5;0 1] fill(X,Y,C); % 可以将X和Y一起看,上面的X和Y矩阵总共有两列,每一列都相当于上面的单个图形绘制
所以上面的代码绘制的图形如下图所示:
-
但是一般在同一个figure中绘制多个图形 可以不通过矩阵的方式绘制可能会更灵活一些
X = [1,3,9]; Y = [2,5,8]; fill(X,Y,'r') hold on; % 使用hold on语法将图形绘制一个figure中 X = [5,9,8,4]; Y = [3,3,1,1]; fill(X,Y,'g') axis([0,10,-1,10]);
上述代码绘制的结果如下图所示:
-
-
后面几个语法除了绘制填充图形之外,也有对填充内容进行属性设置的调整参数。其中第二个语法也是绘制多个区域,但是不推荐使用,直接使用hold on来完成不同填充区域绘制即可。后面的几个语法都将在下例中体现。
-
例如绘制不同面透明度的图形,参考代码如下:
x = [1 3 4 3 1 0]; y = [0 0 2 4 4 2]; hold on fill(x,y,'r','FaceAlpha',0.3,'EdgeColor',[0.5 0.2 0.55],'LineWidth',3); % 上句是对属性进行了设置,其中 % FaceAlpha:表示填充面颜色的面透明度 % EdgeColor:表示填充面的边缘颜色 % LineWidth:表示填充面边缘的宽度 p = fill(x 2,y,'m','FaceAlpha',0.3); % 最后一种的语法 p.LineWidth = 3; p.EdgeColor = [1 0 0]; p.EdgeAlpha = 0.8; % EdgeAlpha:表示填充面边缘的透明度 fill(x 1,y 2,'y','FaceAlpha',0.3); % 该方法未使用矩阵的方式绘制多种图形,而是通过hold on的方式
最终绘制的图形如下所示:
-
-
-
当然,在绘制图形后,如若所设置的图形已经固定,后期不需要改动,但是又有别的程序控制该图形运动,例如小车。那么在绘制图形时,最好通过相对的方法填充区块,先定义出一个点,然后根据这个点去创建别的点,这样在调用该图形的时候,只需要改变这一个点即可。
-
到这,matlab的二维绘图功能就此结束。下个坑有俩,一个是三维绘图的学习,还有个时matlab GUI学习,然后写一个自动绘图APP。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgbihke
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01