급하게 MATLAB을 써야 하는데 맷랩이 깔려 있는 컴퓨터가 없으면 참 당황스럽죠? 이럴 때 간단하게 Octave를 받아서 쓸 수 있습니다. 회사에서 사무용 컴퓨터에 맷랩을 깔 수 없어서 잽싸게 옥타브를 깔았습니다. 근데 그래프를 찍었더니 시스템이 멎어 버리네요.

검색을 해 보니 그래픽스 툴킷 때문에 그런 버그가 생길 수 있나봅니다.


>> graphics_toolkit

ans = qt

>> agts = available_graphics_toolkits

agts =

{

  [1,1] = fltk

  [1,2] = gnuplot

  [1,3] = qt

}

>> graphics_toolkit(agts{2}) % Sets the graphics toolkit.

>> plot([1 2 3 4])

>>


위 코드에서는 우선 graphcis_toolkit 명령으로 현재 적용되어 있는 그래픽스 툴킷을 확인합니다. 처음에는 qt로 돼 있었는데 아무리 해도 플랏이 뜨질 않았습니다.

available_graphics_toolkits 명령어를 쓰면 시스템에서 사용 가능한 그래픽스 툴킷 목록을 볼 수 있습니다. fltk, gnuplot, qt를 쓸 수 있다고 나오네요. 실제 해 보니 qt는 안 되고 fltk하고 gnuplot이 되네요. 그나마 둘 중 나은 gnuplot으로 설정을 바꿉니다. (graphics_toolkit('gnuplot') 하시면 되겠죠)

원래 성격으로는 qt가 어떻게 잘못 설치돼 있는지 확인해 보고 문제를 해결해야 할 텐데, 회사에서 일할 때는 일단 문제가 빨리 해결되는 게 장땡이기 때문에 그냥 gnuplot 되는 것 확인하고는 그걸로 썼습니다.

매번 쓸 때마다 graphics_toolkit('gnuplot') 쓰려면 귀찮으니까 기본 그래픽스 툴킷을 gnuplot으로 고쳐두면 좋겠죠? 본인 기본 폴더에 .octaverc 라는 파일이 있는지 보고, 그 파일이 있으면 파일에 graphics_toolkit('gnuplot') 요 명령을 추가하면 끝납니다. 혹시 파일이 없으면 하나 만들고 명령어 넣어주면 되고요.


참 쉽죠? :)


위 문제를 해결하기 위해 참고한 링크는 아래와 같습니다.

http://stackoverflow.com/questions/13885973/always-not-responding-freeze-when-use-plot-with-qtoctave

http://stackoverflow.com/questions/12032494/plot-window-not-responding

+ Recent posts