Matlab填充功能函数fill

您所在的位置:网站首页 指令fill Matlab填充功能函数fill

Matlab填充功能函数fill

2023-11-12 05:31| 来源: 网络整理| 查看: 265

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。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3