matlab 의 pcolor와 같은 함수가 있나요?

게시판 IDL Q&A matlab 의 pcolor와 같은 함수가 있나요?

6 답변 글타래를 보이고 있습니다
  • 글쓴이
    • #2445 Reply
      tlseorb0111
      회원

      안녕하세요

      matlab의 pcolor와 같은 역할을 하는 함수가 idl에 있는지 궁금합니다.

      https://nf.nci.org.au/facilities/software/Matlab/techdoc/ref/pcolor.html
      위 링크의 두번째 그림처럼 그리려고 합니다.

      링크의 matlab 예제는 매우 간단하게 그릴수 있는것 같은데요

      idl의 image함수를 쓰자니 따로 추가 작업을 해야할것 같습니다.

      간단하게 링크와 같은 그림을 그릴 수 있을까요?

    • #2446 Reply
      Sangwoo
      회원

      링크의 첫번째 그림같은 경우는 IMAGE 함수를 사용하면서 INTERPOLATE 속성을 0으로 설정하면 구현이 가능합니다. 하지만 두번째 그림과 같은 결과를 간편하게 전달해주는 내장 기능은 제가 알기로는 없는 것 같습니다. 아마도 POLARPLOT 함수 정도가 비슷할 수도 있겠지만 저 그림과 똑같은 방식의 구현을 해주지는 않습니다. 따라서 IDL에서는 PLOT, POLYGON 등과 같이 기존에 내장된 그래픽 기능들을 활용하여 따로 만드는 방식으로 구현하는 것이 현실적으로 가능한 방법일 것 같습니다.

      • 이 답변은 Sangwoo에 의해 8 years, 11 months 전에 수정됐습니다.
    • #2448 Reply
      Sangwoo
      회원

      추가로 언급하자면 IDL의 내장 그래픽 기능들을 사용하여 구현하는 것이 아주 어렵지는 않습니다. 구현 예제를 제가 나중에 제 IDL 블로그에 올려볼 예정이니 그 때 링크를 여기에 올리도록 하겠습니다.

    • #2449 Reply
      tlseorb0111
      회원

      polygon 함수를 사용해서 그려봤지만 bin의 갯수가 늘어나면 속도가 너무 느려 쓸수가 없습니다. window함수의 refresh 메소드도 추가해 봤지만 그래도 느리더군요. 그림 한장 그리는데 속도가 너무 걸리니 효휼이 좋질 않습니다.
      direct그래픽을 사용하면 빠르긴하지만 그림이 예쁘질 않네요….
      polygon외에 다른 방법은 없을까요?

      • 이 답변은 tlseorb0111에 의해 8 years, 11 months 전에 수정됐습니다.
    • #2451 Reply
      Sangwoo
      회원

      IDL 개발사측에서 아예 built-in으로 넣어준 기능이 아니기 때문에, 기존의 다른 기능들을 사용하여 프로그래머가 직접 구현해야 하는 경우인데요. 이런 경우 프로그래머의 기술에 의존하는 부분도 있지만, 사용된 기존 기능의 효율에 따른 의존도가 더 클 수가 있습니다. POLYGON 함수를 이용할 경우, 구현되는 폴리곤들들의 갯수에 따라 소요시간이 어느 정도 있을 수 밖에 없을겁니다. 이건 IDL의 개발사의 기술진이 아니면 해결해줄 수 없는 부분이겠지요. 그렇다면 POLYGON 함수를 사용하는 방법외에 다른 방법(약간의 꼼수가 될 수도 있습니다)을 찾아볼 수도 있을텐데, 이것은 누구도 보장해주기 힘든 부분일겁니다. 숙련된 IDL 프로그래머 누군가가 따로 시간을 들여 궁리를 해야 하는 작업일텐데, 누가 언제 해줄지를 정확히 예측하기는 어렵겠지요.

      저도 그냥 POLYGON 함수를 이용해서 대충 시도는 해봤는데, 알려주신 예시 그림에서와 같이 5X12의 셀들을 갖는 경우 제 구닥다리 컴퓨터에서는 약 3~4초 정도가 걸렸고, 셀들의 숫자가 많아지면 당연히 그에 비례하여 더 많은 시간이 소요됩니다. 물론 이상적인 상황은 아니겠지만, 가장 최신 버전의 IDL에서 POLYGON 함수를 사용하여 그와 같은 그림을 그리고자 할 경우 더 이상의 솔루션은 현 시점에서는 없을 것이라는 생각이 듭니다.

    • #2452 Reply
      tlseorb0111
      회원

      밤늦은 시간까지 답변 감사합니다.
      polygon 외에 다른 방법을 좀 더 생각해 봐야겠군요.

    • #2453 Reply
      Sangwoo
      회원

      일단 POLYGON 기능을 사용하여 구현해보는 방법을 제 블로그에 올렸습니다. 참조하시기 바랍니다.

      http://blog.daum.net/swrush/307

6 답변 글타래를 보이고 있습니다
'matlab 의 pcolor와 같은 함수가 있나요?'에 답변달기
글쓴이 정보: