"Fill" Matlab 中的函数



我得到了:

x=2:0.1:10

y=sin(x(

并被要求绘制此函数,并为x轴上方的sin填充绿色,为x轴下方的sin添加品红色。

由于我们刚开始使用matlab,所以着色不一定要精确,但应该覆盖函数和轴之间的大部分区域。

我的问题是,为什么这是正确的:

填充([2 2 2.6 pi],[0 sin(2(sin(2.6(0],'g'(;

为什么我必须为x值输入两个2,为什么y值以0开始和结束?

我发现很难理解这些数字是从哪里来的,因为对于第二个领域,

fill([pi 3.9 3*pi/2 5.5 2*pi],[0 sin(3.9(-1 sin(5.5(0],'m'(;

我不会为x值输入两次相同的数字,但仍必须为y值输入零。

如果有人能解释如何以及为什么选择这些数据,我将不胜感激。

只要这些示例的作者选择绘制垂直边,就会出现重复的x值(根据定义,垂直意味着x不变(。只要作者选择一直填充到x轴,就没有y值(根据定义,y值为0(。或者在第二个例子中,向上

要看到这一点,对于您的每个示例,取x值和y值,并将它们视为一系列x,y对,如下所示(在第一个示例中(:

>> [x(:), y(:)]
ans =
2.0000         0
2.0000    0.9093
2.6000    0.5155
3.1416         0

现在了解每一行都会为您提供正在填充的多边形的一个顶点的坐标。将每个坐标点与绘制的图形进行比较。

如果练习的对象总是填充到x轴,那么通常您会期望在开始和结束时重复x值,但在您给出的两个特定的示例中,y似乎已经变为零(在第一个示例的结尾,以及第二个示例的开始和结尾(。在x轴上绘制额外的零长度边是允许的(也许更一致,不那么令人困惑(,但这是多余的,作者选择省略它们。

第一个字段用于所有x值,第二个字段用于全部y值。这些值形成有序对,用于定义要填充的形状的角的坐标。

例如,您的第二个示例

fill([pi 3.9 3*pi/2 5.5 2*pi],[0 sin(3.9(-1 sin(5.5(0],'m'(;

有角

  1. (pi,0(
  2. (3.9,罪(3.9((
  3. (3*pi/2,-1(
  4. (5.5,sin(5.5((
  5. (2*pi,0(

相关内容

  • 没有找到相关文章