Я не особенно разбираюсь в MATLAB, так что это может быть глупый вопрос, но я был бы признателен за любую помощь, которая может быть оказана.
У меня есть некоторый код, который создает некоторые оси, присваивает uicontextmenu указанным осям, а затем строит график выбора пользователя по осям.Доступ к uicontextmenu можно получить, щелкнув правой кнопкой мыши по графикам (как и должно быть) в каждом случае графика, который требуется ЗА ИСКЛЮЧЕНИЕМ для pcolor и contourf.С чего бы это?Можно ли как-нибудь обойти это?
Благодаря обширной отладке я обнаружил, что uicontextmenu доступно до тех пор, пока не будут вызваны функции pcolor (или contourf), а затем исчезнет.Чего мне не хватает?
РЕДАКТИРОВАТЬ: По запросу, пример кода ниже.Если вы используете pcolor, uicontextmenu не появится, а если вы используете plot, то он появится.Я думаю, что это как-то связано с данными, которые выделяет курсор.Если ваш курсор щелкнет правой кнопкой мыши на графике данных, ничего не появится в обоих.Но почему это?
axes;
stuff = uicontextmenu('Parent',ancestor(axes,'figure'));
stuffm = uimenu('Parent',stuff,'Label','Change something');
set(axes,'uicontextmenu',stuff);
x = randn(10);
y1=randn(10,1);
y2=randn(10,1);
plot(y1,y2)
%pcolor(x)