2012-06-12 15 views
7

Oto konfiguracja:Skalowalny, przeciągany pudełko na działkach, które można wybrać dane

Mam graficzny wykres danych, a ja staram się znaleźć, jeśli to możliwe, aby spróbować umieścić pole na rysunku które można przesuwać i zmieniać szerokość i zwracać pewne wartości, takie jak procent i obszar pod krzywą. Wygląda to mniej więcej tak:

Example

Wszelkie sugestie, od czego zacząć? Czułem, że może to być wykonalne przy użyciu interfejsu GUI w porównaniu ze standardową fabułą.

Odpowiedz

8

Zacznę od imrect. Jest on przeciągalny i można do niego dodawać wywołania zwrotne.

(pobierane bezpośrednio z MATLAB pomoc)

figure, imshow('cameraman.tif'); 
h = imrect(gca, [10 10 100 100]); 
addNewPositionCallback(h, @(p) title(mat2str(p, 3))); 
fcn = makeConstrainToRectFcn('imrect', get(gca,'XLim'), get(gca, 'YLim')); 
setPositionConstraintFcn(h, fcn); 

Zmiana addNewPositionCallback do czegoś, co odpowiada Twoim potrzebom. W szczególności, uzyskaj potrzebne piksele z obrazu (przy użyciu pozycji) i obliczyć, co chcesz.

+1

Jestem prawie pewien, że to jest dokładnie to, czego potrzebuję. Dzięki! – Brian

Powiązane problemy