SMALL

IDL/New Graphics 169

궤적 상의 입자 운동 구현 및 애니메이션

오늘은 2차원 공간에 존재하는 궤적이 있고 그 위에서 움직이는 입자가 있는 상황을 가정하여 이를 그래픽적으로 도식화하고 그 움직임을 담은 애니메이션 파일을 만들어보는 예제를 소개하고자 합니다. 먼저 궤적을 구성하는 점들의 좌표 데이터를 생성하는 작업부터 진행합니다. 그 과정은 다음과 같이 정의해봅니다. n = 400 t = [0:2*!pi:2*!pi/n] r = 0.5+COS(t) x = r*COS(t) y = r*SIN(t) HELP, x, y 여기서는 총 401개의 X축 및 Y축 좌표값들로 구성된 배열 x 및 y를 정의하였습니다. 이러한 점들로 구성된 궤적을 그림으로 표출하기 위하여 다음과 같은 과정을 추가로 실행합니다. sx = 600 sy = 600 win = WINDOW(DIMENSIONS=[s..

IDL/New Graphics 2026.03.13

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

2차원 공간상에 흩어져있는 다수의 데이터 포인트들 다양한 색상으로 표출하는 방법에 관한 게시물들(링크 1, 링크 2)을 올렸던 적이 있습니다. 그래서 이러한 방식의 구현을 위하여 SCATTERPLOT 및 BUBBLEPLOT 함수를 사용하는 방법 및 예제들을 다양하게 소개한 바 있는데요. 오늘은 이러한 연장선상에 있는 또 다른 예제들을 소개해보고자 합니다. 먼저 예제 데이터를 생성하는 과정부터 시작하면 다음과 같습니다. n = 100 x1 = RANDOMU(-1, n)*100 y1 = RANDOMU(-2, n)*100 x2 = RANDOMU(-3, n)*100 y2 = RANDOMU(-4, n)*100 x3 = RANDOMU(-5, n)*100 y3 = RANDOMU(-6, n)*100 여기서는 2차원 공..

IDL/New Graphics 2026.03.06

막대 차트(Bar Chart) 표출하기

막대 차트(Bar Chart)는 막대 모양의 그래프를 표출하면서 막대 내에서 값에 따라 마디마디가 구분되어 보이도록 하는 표출 방식을 의미합니다. 이해를 돕기 위하여 예제 그림만 먼저 본다면 다음과 같습니다. 이 그림에서는 어떤 설문 조사를 6개의 집단들을 대상으로 실시하고 각 카테고리별 응답 비율을 막대 차트의 형태로 표시하고 있습니다. 오늘은 이러한 막대 차트(Bar Chart) 그림을 IDL에서 표출하는 방법을 소개해보고자 합니다. 위의 그림은 당연히 IDL로 표출한 것이며 그 과정을 지금부터 살펴보겠습니다. 먼저 예제 데이터부터 정의해봅시다. 그 과정은 다음과 같습니다. cats = ['very bad', 'bad', 'not bad', 'good', 'very good'] colors = ['..

IDL/New Graphics 2025.12.09

BOXPLOT 함수 소개

오늘은 NG 체계에서 지원되는 그래픽 함수들 중에서 BOXPLOT 함수에 관하여 소개해보기로 하겠습니다. BOXPLOT 함수는 NG 체계의 그래픽 함수들 중에서도 비교적 나중에 도입된 경우에 속하며 IDL 8.2.2 버전에서부터 지원되기 시작하였습니다. IDL에서 이 함수에 대한 설명을 보면 box and whisker plot(상자 수염 그림) 형태의 표출 기능이라고 언급되어 있습니다. 이것은 통계 분야에서 흔히 사용되는 표출 형태로서 최소값(Minimum), 1사분위값(25% Quartile), 2사분위값(50% Quartile or Median), 3사분위값(75% Quartile), 최대값(Maximum) 등의 5종의 통계값들을 박스 및 에러바(box and error bar)의 형태로 나타내는 ..

IDL/New Graphics 2025.12.03

2종의 막대 그래프를 서로 붙여서 표출하기

오늘은 IDL에서 BARPLOT 함수를 이용하여 막대 그래프를 표출하는데 있어서 서로 다른 두 종류의 데이터에 대한 막대 그래프 그림을 서로 붙여서 표출하는 예제를 소개해보고자 합니다. 먼저 이를 위하여 필요한 두 종류의 예제 데이터를 다음과 같이 생성해봅시다. n = 10000 data1 = RANDOMN(-1, n)*10 data2 = RANDOMN(-2, n)*20+5 여기서 생성된 data1 및 data2는 모두 정규 분포를 하는 10000개의 값들로 구성된 1차원 배열인데, data1은 평균 및 표준편차가 각각 0 및 10이고 data2는 평균 및 표준편차가 각각 5 및 20인 데이터입니다. 그리고 각 데이터에 대한 분포 자료를 얻기 위하여 HISTOGRAM 함수를 다음과 같이 사용합니다. bs..

IDL/New Graphics 2025.11.27

바코드 형태의 이미지의 표출 및 응용 [2]

IDL에서 바코드(Barcode)의 형태를 띈 이미지를 구현하고 표출하는 방법을 지난 회차 게시물에서 소개한 바 있습니다. 오늘은 이러한 기법을 응용하는 예제를 살펴보기로 합니다. 먼저 다음과 같이 1차원적인 패턴의 데이터를 가정하고 기본적인 표출까지 진행해봅시다. x = FINDGEN(241) y = 1.7*SIN(x*!PI/25.0)*EXP(-0.01*x)win = WINDOW(DIMENSIONS=[600, 500], /NO_TOOLBAR) p = PLOT(x, y, COLOR='dark cyan', THICK=2, $ XRANGE=[0, 240], XTICKINTERVAL=60, $ FONT_SIZE=11, MARGIN=[0.1, 0.1, 0.1, 0.2], /CURRENT) 여기서는 감쇄형..

IDL/New Graphics 2025.11.17

바코드 형태의 이미지의 표출 및 응용 [1]

오늘은 IDL에서 바코드(Barcode)의 형태를 띈 이미지를 표출하는 방법을 소개해보고자 합니다. 즉 마치 바코드처럼 세로 방향의 검은 선들이 흰 바탕에 표시되는 방식을 뜻합니다. 다만 오늘 해보고자 하는 것은 바코드의 모습을 띈 이미지를 표출하는 것일 뿐이고 바코드의 생성 메커니즘을 적용하여 바코드 자체를 생성하는 것은 아님을 미리 밝혀둡니다. 그러면 먼저 바코드 형태의 데이터를 다음과 같이 0과 1의 값들로 구성된 1차원 배열로 가정하여 임의로 정의해봅시다. code = [1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, $ 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1..

IDL/New Graphics 2025.11.11

색상을 채운 플롯(Filled Plot)의 표출 [3]

IDL에서 플롯의 선(Line) 사이를 색상으로 채워서 표출하는 기능을 담당하는 FILLPLOT 함수는 IDL 8.7.2 버전부터 지원되기 시작하였으며 이 함수의 사용법 및 예제는 이미 관련 게시물들(링크1, 링크2)을 통하여 소개한 바 있습니다. 오늘은 FILLPLOT 함수를 사용하는 또 다른 방식에 대한 예제들을 소개해보고자 합니다. 일단 FILLPLOT 함수의 기본적인 사용법은 앞서 언급된 링크들을 참조하는 것으로 하고 시작해봅니다. 먼저 예제로 사용할 데이터를 다음과 같이 생성합니다. x = [0:2:0.01] y1 = FLTARR(N_ELEMENTS(x)) y2 = 1.2*SIN(4*!pi*x) 여기서는 0부터 2까지 0.01의 간격을 갖는 201개의 실수형 값들로 구성된 x를 생성하고 이를 바..

IDL/New Graphics 2025.11.05

이미지(Image)를 격자(Grid)와 함께 표시하기

2차원 데이터에 대한 이미지(Image)를 표출하는데 있어서 격자(Grid)를 함께 표시하는 방식은 이미지를 구성하는 각각의 화소(Pixel)를 사각형으로 둘러싸서 다른 화소들과 구분하여 보고자 할 때 유용합니다. 이러한 표출은 이미지 배열의 크기가 큰 경우보다는 작은 경우에 더 적합합니다. 물론 통상적으로는 이미지의 표출에 있어서 격자를 함께 표시하지 않는 것이 기본이긴 하지만, 필요에 따라서는 개별 화소를 구분하여 볼 목적으로 격자들을 함께 표시하고 싶을 수도 있습니다. IDL에서도 이러한 방식의 표출은 가능합니다. 그래서 그 방법을 소개해보고자 합니다. 먼저 가상의 예제 데이터를 다음과 같이 생성해봅시다. 여기서는 5x5의 구조를 갖는 2차원 배열 data를 생성하면서 화소값들은 난수로 부여되도록 ..

IDL/New Graphics 2025.10.28

줄기형 플롯 표출하기

줄기형 플롯(Stem Plot)은 각 데이터 포인트로부터 세로 또는 가로 방향의 선이 마치 줄기처럼 뻗어 있는 듯한 모습으로 구현되는 플롯을 의미합니다. 그런데 사실 IDL의 그래픽 기능 함수들 중에는 이러한 형태의 플롯을 구현할 수 있도록 해주는 전용 함수는 없습니다. 다만 우회적인 방법을 이용하여 이러한 줄기형 플롯을 구현하는 것은 가능은 합니다. 바로 PLOT 함수 및 BARPLOT 함수를 적절히 혼용하는 방법인데, 이러한 방식을 사용하면 거의 비슷하게 구현이 가능합니다. 그러면 가상의 x, y 데이터를 정의하고 이를 줄기형 플롯으로 구현하는 예제를 살펴봅시다. 일단 데이터 포인트들이 정사각형 기호로 표시되는 플롯을 먼저 표출합니다. 그 시작 과정은 다음과 같습니다. x = FINDGEN(21) y..

IDL/New Graphics 2025.10.21
728x90