Выделите части сюжета Matlab
У меня есть сюжет Matlab, который выглядит следующим образом:
Где значения Y для каждого из вспомогательных участков хранятся в одномерных массивах. Я хотел бы найти область, где верхний график выше определенной высоты, скажем, 0,5. Я также хотел бы выделить ту же область на других графиках.
Вот пример того, о чем я говорю:
Лучшее, что я смог найти, это функцияarea
который заполнит область на сетке Matlab. Тем не менее, если бы кто-то мог сказать мне, как сделать его прозрачным, а также как заполнить несколько областей без необходимости выполнять много команд областей, это было бы здорово.
В противном случае я могу определить группу областей в структуре и использовать цикл for для их построения. Вот некоторый псевдо-код того, как я бы это сделал:
countstruct = 1;
for i = 1:length(yValue)
if (yValue(i) > 1)
outside = [outside, i]
else
areas(countstruct).outside = outside;
countstruct = countstruct + 1;
clear outside;
end
end
Затем, чтобы построить участки, я бы сделал это:
for i = 1:length(areas)
area(areas(i).outside, ones(length(area), 1)*14, "SomeThingToMakeItTransperant')
end
и я бы сделал это для каждого из участков. Очевидно, это довольно запутанно, поэтому было бы лучше иметь один вкладыш. Кто-нибудь может подумать об одном?