SMALL

IDL/New Graphics 167

IDL 9.0의 그림 저장 문제에 관하여 [2]

얼마전에 IDL 9.0의 NG 체계에서 그래픽 요소들이 중첩된 그림을 표출했을 때 중첩이 정상적으로 되지 않는 문제에 관한 게시물을 올린 바 있습니다. 그리고 이러한 문제점의 증상을 살펴보고, 만족스럽지는 않지만 나름의 대안도 함께 살펴보았는데요. 만족스럽지는 않지만 나름 써볼만한 괜찮은 대안이 있어서 오늘 소개해보고자 합니다. 일단 지난 게시물에서 제시했던 예제를 그대로 사용하면서 여기에 TEXT 함수로 문자를 삽입하는 내용까지 추가해보기로 합니다. 그 과정은 다음과 같습니다. x = FINDGEN(101) y = SQRT(x) + RANDOMU(-1, 101) * 2 - 1 win = WINDOW(DIMENSIONS=[600, 500], /NO_TOOLBAR) p = PLOT(x, y, THICK=2..

IDL/New Graphics 2024.06.25

IDL 9.0의 그림 저장 문제에 관하여 [1]

오늘은 IDL 9.0에서 보고되고 있는 알려진 문제 하나에 관하여 언급을 해보고자 합니다. 이 문제는 IDL 9.0에서 NG 체계에서 그래픽 요소들이 중첩되어 표출된 그림을 파일로 저장할 때 발생하는 문제인데요. 먼저 예제 그림을 다음과 같이 표출해봅시다. x = FINDGEN(101) y = SQRT(x) + RANDOMU(-1, 101) * 2 - 1 win = WINDOW(DIMENSIONS=[600, 500], /NO_TOOLBAR) p = PLOT(x, y, THICK=2, FONT_SIZE=11, MARGIN=0.1, /CURRENT) sym = SYMBOL(40, 6.8, 'circle', /SYM_FILLED, SYM_FILL_COLOR='tomato', SYM_SIZE=6, /DATA)w..

IDL/New Graphics 2024.05.29

그래픽 창의 위치를 직접 제어하는 방법

IDL에서 그림을 표출하는데 있어서는 그래픽 창을 띄우는 것은 필수입니다. 그래픽 창이 떠야 그 위에 그림을 표출할 수 있다는 것은 뭐 당연한 얘기일 것입니다. 일단 NG(New Graphics) 체계를 기준으로 얘기하면 여기서는 그래픽 창을 띄울 때 WINDOW 함수를 사용하게 됩니다. 그런데 만약 다수의 그래픽 창들을 연속하여 띄울 경우에는 마치 순차적으로 약간씩 어긋나게 차곡차곡 쌓이는듯한 느낌으로 생성됩니다. 간단한 테스트를 위하여 다음과 같이 IDL의 커맨드 창에서 다수의 그래픽 창들을 연속적으로 띄우도록 하면 이 그래픽 창들은 화면상에서 대략 다음과 같은 모습으로 뜰 것입니다. IDL> w1 = WINDOW(DIMENSIONS=[600, 500], /NO_TOOLBAR) IDL> w2 = WI..

IDL/New Graphics 2024.05.09

등위선(Contour) 그림의 각종 색상 설정 방법들 [2]

지난 회차 게시물에서는 NG 체계에서 CONTOUR 함수를 사용하여 등위선 그림을 표출하는데 있어서 색상과 관련된 각종 속성들을 이용한 설정 방법에 관하여 살펴보았습니다. 여기서는 주로 등위선의 선(Line) 자체 및 문자들에 대한 색상 처리에 관하여 살펴보았는데요. 오늘은 이어지는 내용으로서 CONTOUR 함수를 사용하여 색상이 채워진 등위선(Filled Contour) 그림을 표출하는데 있어서 색상을 설정하는 방법에 관하여 살펴보고자 합니다. 그러면 지난 회차에서와 동일한 예제를 사용하여 기본적인 표출부터 먼저 해놓고 시작하겠습니다. 다만 여기서는 색상이 채워진 등위선의 형태로 표출하기 위하여 FILL 속성을 처음부터 사용하기로 합니다. data1 = FLTARR(600, 600) data2 = FL..

IDL/New Graphics 2024.03.25

등위선(Contour) 그림의 각종 색상 설정 방법들 [1]

IDL의 NG 체계에서 등위선(Contour)의 표출에 사용되는 CONTOUR 함수를 보면 색상과 관련된 속성들이 여러 개 있습니다. IDL 도움말에서 CONTOUR 함수에 관한 섹션을 보면 이러한 속성들 즉 "COLOR"라는 문구가 붙은 것들이 몇 개 보이는데 정리해보면 대략 다음과 같습니다. BACKGROUND_COLOR C_COLOR COLOR LABEL_COLOR FONT_COLOR VERT_COLORS 그리고 이렇게 "COLOR"라는 문구가 붙은 속성들 외에도 색상과 관련된 기타 속성들이 몇 개 더 있습니다. RGB_TABLE RGB_INDICES 사실 이와 같이 명칭이 다소 헷갈리는 속성들이 있다보니 이들을 어떤 식으로 활용하면 되는가에 있어서 약간 혼란스럽게 느껴질 수도 있습니다. 따라서 오..

IDL/New Graphics 2024.03.20

다수의 그림들에 대한 OVERPLOT 및 TARGET의 활용법

IDL에서 그림을 표출해놓은 상태에서 그 위에 추가 요소를 중첩해야 하는 경우들이 종종 있습니다. 예를 들어 플롯(Plot) 그림을 표출한 상태에서 추가로 새로운 데이터를 중첩하려면 /OVERPLOT 키워드를 사용하면 됩니다. 그리고 이미 표출된 그림 위에 문자, 기호 등을 추가하는 것도 얼마든지 가능합니다. 그런데 한꺼번에 여러 개의 그림들이 표출된 상태에서 특정한 그림에 대하여 뭔가를 더 추가해야하는 경우가 있습니다. 오늘은 그러한 경우의 적절한 처리 방법에 관하여 소개해보고자 합니다. 본격적인 설명을 위하여 하나의 그래픽창에 3종의 그림들이 한꺼번에 표출되는 상황을 예로 들어보겠습니다. 먼저 예제 데이터의 생성 및 기본적인 표출 과정은 다음과 같습니다. x = FINDGEN(361) y1 = SIN..

IDL/New Graphics 2024.03.12

축의 라벨 문자들의 회전 처리

IDL에서 X축, Y축 등으로 구성되는 그림을 그리게 되면 각 축에는 눈금 및 라벨 문자들이 붙게 됩니다. 일단 예제 데이터를 생성하고 플롯을 먼저 표출해보면 그 과정 및 결과 그림은 다음과 같습니다. x = FINDGEN(301)*100 y = 1.7*SIN(1.3*x*!PI/250.0)*EXP(-0.002*x) win = WINDOW(DIMENSIONS=[600, 500], /NO_TOOLBAR) p = PLOT(x, y, COLOR='crimson', FONT_SIZE=11, /CURRENT) 이 플롯에서 X축을 보면 0~3000의 범위이며 500의 간격으로 7개의 눈금들에 대하여 라벨 문자들이 표기되어 있습니다. 그리고 문자의 방향은 당연히 정방향입니다. 그냥 이렇게만 표출해도 별다른 문제는 없습..

IDL/New Graphics 2024.02.05

데이터 포인트들을 다양한 색상으로 표출하기 [2]

제가 얼마전에 "데이터 포인트들을 다양한 색상으로 표출하기"라는 제목의 게시물을 올린 바 있습니다. 기본적으로는 2차원 공간상에 흩어져있는 다수의 데이터 포인트들이 있고 각 포인트마다 데이터 값이 있을 경우를 가정하고, 이러한 데이터를 2차원 공간상에서 표시하면서 각 포인트마다 데이터 값에 따라 색상을 부여하는 방식으로 표출하는 방법에 관한 내용이었습니다. 오늘은 그 연장선에서 한 단계 더 들어가보고자 하는데요. 데이터 포인트들을 다양한 색상으로 표시하면서 윤곽선도 함께 표시되도록 하는 방법에 관하여 알아보고자 합니다. 원래 SCATTERPLOT 함수에서는 각 포인트의 윤곽선에 대한 설정은 가능합니다. 특히 SYM_COLOR 속성을 사용하면 각 포인트의 심볼의 윤곽선 색상을 설정할 수 있고 SYM_FIL..

IDL/New Graphics 2023.07.31

Refresh 메서드를 활용한 표출 시간 절약법

우리가 NG 체계에서 그림 표출을 할 때, 다수의 그래픽 개체들이 한 판에 올라가도록 해야 하는 경우들이 종종 있습니다. 즉 기본이 되는 그림을 하나 표출해놓고 그 위에 다른 그래픽 요소들을 계속 중첩해가는 경우입니다. 이런 예제를 들자면 뭐 수도 없이 많겠지만, 제가 예전에 게시물로 올렸던 케이스 하나를 예로 들어보겠습니다. 해당 게시물의 링크는 다음과 같습니다. https://swrush.tistory.com/678 이 예제에서는 다음과 같은 표출 결과를 얻게 되어있습니다. 이와 같이 서피스 기반의 그림 상에 지도, 이미지, 등위선 형태의 그림들을 중첩하는 과정입니다. 그리고 전체적인 과정에 해당되는 소스 프로그램은 다음과 같습니다. PRO test_map_image_contour_3d TIC dat..

IDL/New Graphics 2023.07.26

데이터 포인트들을 다양한 색상으로 표출하기 [1]

2차원 공간상에 흩어져있는 다수의 데이터 포인트들이 있고 각 포인트마다 데이터 값이 있을 경우를 가정하고, 이러한 데이터를 2차원 공간상에서 표시하면서 각 포인트마다 데이터 값에 따라 색상을 부여하는 방식으로 표출하는 방법에 관하여 살펴보고자 합니다. 사실 이러한 주제의 게시물들을 제가 예전에 두어번 정도 올린 적이 있기는 하지만 이번에 새롭게 다시 정리를 해보고자 합니다. 일단 가상의 데이터를 다음과 같이 생성해봅시다. n = 1000 x = RANDOMU(-1, n)*100 y = RANDOMU(-2, n)*100 v = RANDOMU(-3, n)*10 여기서는 1000개의 데이터 포인트들을 가정하고, 각 포인트에 대한 X 좌표, Y 좌표 및 데이터값에 해당되는 배열인 x, y, v를 생성한 것입니다..

IDL/New Graphics 2023.05.31
728x90