matlab中fill函数
一、fill函数概述
fill函数是Matlab中的一个图形绘制函数,用于绘制填充区域。它可以通过指定顶点坐标和填充颜来绘制多边形曲线等形状。
二、fill函数的基本语法
fill(X,Y,C)
X: 一个1xn或nx1的向量,表示多边形或曲线的x坐标。
Y: 一个1xn或nx1的向量,表示多边形或曲线的y坐标。
C: 一种颜规范,可以是RGB颜值、颜名称或十六进制颜值。
三、fill函数绘制多边形
使用fill函数绘制多边形需要先指定多边形各个顶点的坐标。以下是一个简单的例子:
```matlab
x = [0 1 1 0];
y = [0 0 1 1];
fill(x,y,'r');
```
这段代码将会绘制一个红正方形。
四、fill函数绘制带有孔洞的多边形
如果要绘制带有孔洞的多边形,需要将外部轮廓和内部孔洞分别指定。以下是一个例子:多边形
```matlab
x = [0.5,2,2,0.5,-2,-2,0.5];
y = [-2,-2,0.5,2,2,-2,-2];
fill(x,y,'r');
hold on;
x = [0,1.5,1.5,0,-1.5,-1.5,0];
y = [-1.5,-1.5,0,1.5,1.5,-1.5,-1.5];
fill(x,y,'w');
```
这段代码将会绘制一个红正方形,其中有一个白的正方形孔洞。
五、fill函数绘制曲线
使用fill函数绘制曲线需要先指定曲线各个顶点的坐标。以下是一个例子:
```matlab
theta = linspace(0,2*pi);
r = 2+sin(6*theta)/3;
x = r.*cos(theta);
y = r.*sin(theta);
fill(x,y,'g');
```
这段代码将会绘制一个绿的心形曲线。
六、fill函数绘制渐变填充
除了使用纯填充外,还可以使用渐变填充。Matlab提供了很多种不同类型的渐变填充效果,例如水平渐变、垂直渐变、对角线渐变等。以下是一个例子:
```matlab
x = [0 1 1 0];
y = [0 0 1 1];
c = [1 0 0; 0 0 1];
fill(x,y,c,'EdgeColor','k','LineWidth',2);
```
这段代码将会绘制一个红蓝相间的正方形,并且边框为黑。
七、fill函数的其他属性设置
除了前面提到的基本语法和绘图方式外,fill函数还有很多其他属性可以设置,例如线型、线宽、透明度等。以下是一个例子:
```matlab
x = [0 1 1 0];
y = [0 0 1 1];
c = [1 0 0; 0 0 1];
fill(x,y,c,'EdgeColor','k','LineWidth',2,'LineStyle','--','FaceAlpha',0.5);
```
这段代码将会绘制一个红蓝相间的正方形,并且边框为黑,线型为虚线,填充透明度为50%。
八、总结
fill函数是Matlab中一个非常实用的图形绘制函数,可以用于绘制多边形、曲线等形状,并且可以实现不同类型的填充效果。在使用时需要注意各个参数的设置和属性设置。