我正在一个Matlab项目中,我需要使用fill
命令。 fill
命令fill(X,Y,C)根据X和Y中的数据用C指定的顶点颜色创建填充的多边形。
我有以下代码:
x_2 = [x, fliplr(x)];
inBetween = [Auf1_mW_pro_mg(1781:length(Auf1_mW_pro_mg)), fliplr(y_Temp)];
figure('Name','Test')
fill(x_2, inBetween, 'r','facealpha',.5,'LineStyle','none');
legend()
...,让我得到这个结果:
您可以看到,我有两个区域,因为我的数据是真实数据,并且推断的行并不总是只有数据行在其上方。
在这种情况下,没有人有一个简单的主意,如何避免在图例中显示两个数据元素?从图例中删除元素似乎并不是一件容易完成的事情,这是我的第一个想法。也许我可以控制将哪些数据添加到图例?
谢谢!
h = fill(x_2, inBetween, 'r','facealpha',.5,'LineStyle','none');
这将返回2×1的Patch数组,您可以为其设置第二个元素的HandleVisibility
属性:
h(2).HandleVisibility = 'off';
现在它不会显示在您的图例中。但是像findobj
这样的功能也找不到补丁,有关后果的更多详细信息here)。