我有这个数字。当用户点击子图时,图像将以不同的图形显示。我希望当用户右键点击子图时,该子图像中的图像将被删除。
有可能吗?如果是的话,那是什么方式?
P.S:这是关于点击并在不同图中显示图像的问题
答案 0 :(得分:0)
通过您提到的问题解决方案中的一些小改动可以轻松完成。
以下代码允许您左键单击图像以在新的图形窗口中获取它,然后右键单击图像将其从子图中删除:
function interactivePlot
list_of_images = {rand(5), rand(10), rand(50), rand(100)};
for ii = 1:length(list_of_images)
subplot(2,2,ii);
a = imagesc(list_of_images{ii}, 'ButtonDownFcn', @newFigure1);
set(a,'UserData',ii);
end
end
function newFigure1(h1,~)
switch get(gcf,'SelectionType')
case 'normal'
figure();
data = get(h1, 'CData');
imagesc(data);
case 'alt'
delete(get(h1,'Parent'));
end
end