2016-04-12 82 views
0

我目前正在策劃一個單一的數字在MATLAB用下面的函數情節MATLAB

PlotImage(finalImage, 1, 4, 4, 'Final Image'); 

function[] = PlotImage(image, y, x, value, name) 
subplot(y,x,value); 
imagesc(image); 
axis image; 
title(name); 
end 

我有幾個「finalImages」,我想根據用戶輸入的顯示,即計劃顯示圖片1默認情況下,如果在鍵盤上按下鍵1 - 5,它將再次使用不同的圖像(圖像1 - 5)調用PlotImage。

有沒有辦法做到這一點?關於KeyPressFcn的文檔似乎對我沒有幫助。

回答

0

您需要指定一個KeyPressFcn處理該按鍵下壓事件並呼籲所有必要的繪圖命令(並可能涉及調用PlotImage

hfig = figure('WindowKeyPressFcn', @(src,evnt)keypress(evnt)); 

%// Create 5 "images" to show 
finalImages = {rand(4), rand(4), rand(4), rand(4), rand(4)}; 

function keypress(evnt) 
    if ismember(evnt.Key, '12345') 
     img = finalImages{str2double(evnt.Key)}; 
     PlotImage(img, 1, 4, 4, 'Final Image'); 
    end 
end 

function PlotImage(img, y, x, value, name) 
    subplot(y,x,value); 
    imagesc(img); 
    axis image; 
    title(name); 
end