2016-07-27 2 views
2

12 개의 조각 (조각)으로 나눈 원을 그리는 방법을 모르겠으므로 그 중 하나를 클릭 할 수 있습니다. 나는 이것을 matlab에서하고 싶다. 나는 라디오 버튼과 같다고 생각하지만, 내가 원하는 모양을 만드는 방법을 모른다.어떻게 슬라이스를 클릭 할 수 있도록 piechart를 할 수 있습니까?

마치 원형 차트 (등분 된 것)처럼 보이며 버튼처럼 슬라이스를 클릭 할 수 있습니다. 어떤 아이디어?

답변

5

pie의 출력은 원형 차트를 구성하는 패치 및 텍스트 레이블에 대한 핸들 배열입니다. 패치 개체의 ButtonDownFcn을 마우스 클릭을 캡처하도록 설정할 수 있습니다. 그런 다음 클릭 된 패치의 핸들을 패치 배열과 비교하여 어떤 패치가 클릭되었는지 파악할 수 있습니다.

handles = pie(1:5); 
patches = findall(handles, 'type', 'patch'); 

set(patches, 'ButtonDownFcn', @(s,e)clickfunction(find(patches == s))) 

function clickfunction(index) 
    fprintf('Clicked piece: %d\n', index) 
end 

enter image description here

+0

어떻게 당신이 좋은 GIF를 만들 않은 : 여기

은 예입니다? –

+1

@ Jørgen [licecap]이라고하는 도구 (http://www.cockos.com/licecap/) – Suever

+0

@BeniaminIonutDobre 이것은 질문을 해결했을 때 답변을 승인 된 것으로 표시 할 수 있다는 것을 상기시키는 것입니다 –

관련 문제