MATLAB의 ginput에 대한 불만 해소 메모
3106 단어 matlab
ginput 함수란?
MATLAB에는 ginput이라는 함수가 있어 좌표축상에서 클릭한 점의 좌표를 취득해 주는 함수입니다.
ginput 문서
불만점
굉장히 직관적으로 좌표를 얻을 수 있기 때문에 편리하지만, ginput으로 여러 점을 떴을 때 도대체 어느 점을 클릭했는지 표시되지 않습니다. 뾰족한 점을 표시하려면 일단 ginput을 벗어나 plot이나 scatter로 표시해야합니다.
이것이 더 낫지?
그래서 뽀뽀한 점의 이력을 표시하도록 어레인지 해 보았습니다. 대략 만들었기 때문에 더 좋은 쓰는 방법은 있다고 생각합니다. 그리고 나는 Mac을 사용하고 있는데, return 키의 키 코드를 모르기 때문에 button의 값을 취해 보니 return 때 button = []이 돌아왔습니다. 우선 그대로 return 키 누르기의 판정에 사용했습니다만, 아마 마즈이.
f = figure;
p = plot(0,0);
xlim([0,1])
ylim([0,1])
R = [];
while 1
[x,y,button] = ginput(1);
if isempty(button)
close(f)
break;
elseif button == 1
R = [R; [x,y]];
p.XData = R(:,1);
p.YData = R(:,2);
end
end
이것을 함수로서 저장해 두면, 이런 동작을 합니다.
이제 어디를 클릭했는지 일목요연.
Reference
이 문제에 관하여(MATLAB의 ginput에 대한 불만 해소 메모), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tommyecguitar/items/4cf200479fa8ff5483b0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
굉장히 직관적으로 좌표를 얻을 수 있기 때문에 편리하지만, ginput으로 여러 점을 떴을 때 도대체 어느 점을 클릭했는지 표시되지 않습니다. 뾰족한 점을 표시하려면 일단 ginput을 벗어나 plot이나 scatter로 표시해야합니다.
이것이 더 낫지?
그래서 뽀뽀한 점의 이력을 표시하도록 어레인지 해 보았습니다. 대략 만들었기 때문에 더 좋은 쓰는 방법은 있다고 생각합니다. 그리고 나는 Mac을 사용하고 있는데, return 키의 키 코드를 모르기 때문에 button의 값을 취해 보니 return 때 button = []이 돌아왔습니다. 우선 그대로 return 키 누르기의 판정에 사용했습니다만, 아마 마즈이.
f = figure;
p = plot(0,0);
xlim([0,1])
ylim([0,1])
R = [];
while 1
[x,y,button] = ginput(1);
if isempty(button)
close(f)
break;
elseif button == 1
R = [R; [x,y]];
p.XData = R(:,1);
p.YData = R(:,2);
end
end
이것을 함수로서 저장해 두면, 이런 동작을 합니다.
이제 어디를 클릭했는지 일목요연.
Reference
이 문제에 관하여(MATLAB의 ginput에 대한 불만 해소 메모), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tommyecguitar/items/4cf200479fa8ff5483b0
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
f = figure;
p = plot(0,0);
xlim([0,1])
ylim([0,1])
R = [];
while 1
[x,y,button] = ginput(1);
if isempty(button)
close(f)
break;
elseif button == 1
R = [R; [x,y]];
p.XData = R(:,1);
p.YData = R(:,2);
end
end
Reference
이 문제에 관하여(MATLAB의 ginput에 대한 불만 해소 메모), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tommyecguitar/items/4cf200479fa8ff5483b0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)