SMALL

IDL/Programming 99

HISTOGRAM 및 HIST_2D 함수의 활용 [2]

지난 회차에서는 HISTOGRAM 함수의 사용법 및 관련 예제를 소개하였고, 오늘은 이어서 HIST_2D 함수에 관하여 살펴보겠습니다. 지난 회에서도 언급했듯이 HISTOGRAM 함수와 HIST_2D 함수는 데이터에 대하서 구간별 빈도 분포를 집계한다는 점은 동일하지만 그 구간들을 1차원적으로 정의하느냐 2차원적으로 정의하느냐에 따른 차이입니다. 그리고 HIST_2D 함수는 아무래도 그 특성상 2차원적인 공간상에 분포하는 데이터를 대상으로 할 경우가 많습니다. 그러면 지금부터 HIST_2D 함수의 사용법 및 관련 예제를 살펴보도록 하겠습니다. 먼저 대상이 될 데이터는 X축 방향으로 대략 0~100 그리고 Y축 방향으로도 대략 0~100 사이의 범위 내에서 분포하는 1000개의 데이터 포인트들로 가정하였습..

IDL/Programming 2022.01.06

HISTOGRAM 및 HIST_2D 함수의 활용 [1]

우리가 데이터 분석 작업을 하는데 있어서 다수의 값들로 구성된 데이터에 대하여 값의 범위를 구간별로 나누어 각 구간별 빈도수를 확인해야 하는 경우가 많습니다. IDL에서는 HISTOGRAM 및 HIST_2D 함수가 그러한 역할을 합니다. 두 함수는 구간이 1차원적이냐 2차원적이냐의 차이라고 보면 되는데요. 오늘부터 2회에 걸쳐서 HISTOGRAM 및 HIST_2D 함수의 사용법 및 관련 예제들을 차례로 소개해보고자 합니다. 오늘은 먼저 HISTOGRAM 함수부터 살펴보겠습니다. 사실 HISTOGRAM 함수는 제가 이 블로그에 올린 여러 게시물들에서 활용된 바 있습니다. 다만 HISTOGRAM 함수 자체에 충실하게 소개했던 적은 의외로 없었기 때문에 이번이 좋은 기회인 것 같습니다. 일단 예제로 사용할 가..

IDL/Programming 2022.01.04

벡터(Vector)의 각도에 대한 정의 및 관련 이슈

오늘은 벡터(Vector)의 각도를 정의하는 몇가지 방식들에 관해서 얘길 해보고자 합니다. 특히 기상 분야에서 바람의 방향을 각도로 나타내는데 있어서 어떤 정의를 사용하느냐에 따라 그 값이 달라지는 경우가 가장 대표적인 사례인데요. 즉 벡터의 방향각을 정의하는 방식에 있어서는 원론적인 방식 외에도 기상학적 관점에서 사용되는 방식들도 있는데 이러한 방식들 사이에는 분명한 차이가 있습니다. 따라서 오늘은 이러한 이슈에 관해서 알아보고 IDL 코딩에 있어서는 어떤 방법으로 처리해야 할 것인가에 대해서도 함께 간략히 살펴보기로 하겠습니다. 일단 그림 하나를 먼저 보겠습니다. 이 그림은 우리가 벡터를 정의하는 원론적인 방식을 나타냅니다. 이러한 벡터의 방향은 U 성분과 V 성분으로 나눠지게 됩니다. 우리가 흔히 ..

IDL/Programming 2021.12.03

FILE_SEARCH 함수에 관하여

IDL에서 지원되는 기능들 중에서는 파일들에 대한 접근(File Access)을 위한 기능들이 있습니다. 주로 이름이 'FILE_'로 시작하는 함수들이 바로 이러한 범주에 속하는데, 오늘 소개할 FILE_SEARCH 함수도 그 중 하나입니다. 이름 그대로 '파일들을 찾아주는' 역할을 하는데, 좀 더 풀어서 얘기한다면 특정한 디렉토리 내에 존재하는 파일들을 탐색하여 그 목록을 찾아주는 역할을 합니다. 그리고 파일들을 찾는데 있어서 특정한 기준을 제시하면 그 기준에 맞춰서 찾아줍니다. 그리고 파일들의 목록을 찾아준다는 것은 그 목록에 속하는 파일들의 이름에 해당되는 문자값들로 구성된 배열을 되돌려준다는 의미로 해석하면 됩니다. 그러면 지금부터 이 FILE_SEARCH 함수의 사용법을 예제와 함께 소개해보기로..

IDL/Programming 2021.07.14

SAVE 명령 및 IDL_SAVEFILE 클래스의 사용에 관하여 [2]

SAVE 명령을 사용하여 .sav 형식의 파일을 만들어서 사용하는 것은 IDL 프로그래밍에 있어서 꽤 유용한 팁입니다. 특히 IDL에서 정의하여 사용하던 각종 변수, 배열 등의 항목들을 그대로 .sav 파일로 저장해두었다가 나중에 RESTORE 명령을 사용하여 복원시켜 사용하는 경우가 바로 그러합니다. 이러한 작업을 위해서는 기본적으로 SAVE 및 RESTORE 명령의 사용법을 잘 알아두는 것이 가장 중요합니다. 그리고 여기서 조금 더 나아가면 IDL_SAVEFILE이라는 객체 클래스까지도 사용할 수 있다면 더 좋습니다. 제가 예전에 이와 관련된 게시물을 한번 올린 적이 있습니다. 여기서는 외부 링크의 게시물을 하나 링크해놓았고 이 링크의 내용을 참조하시라는 안내 정도만 해드렸었는데요. 오늘은 제가 나름..

IDL/Programming 2021.03.15

NG 체계에서의 문자 표기 관련 팁 몇가지 (PDF 문서)

IDL의 NG 체계에서 문자를 표기하는데 있어서 알아두면 좋을만한 팁들 몇가지를 정리해본 PDF 문서를 공유합니다. 이 문서는 지난 11월 19일에 (주)에스이랩에서 IDL/ENVI 고객들에게 이메일로 배포했던 한장강의 파일인데, 제가 여기서도 유저들과 함께 공유하면 좋을 것 같아서 이렇게 올려봅니다. 세부 내용 중에서는 제가 이 블로그에서 다뤘던 것들도 있고 그렇지 않은 것들도 있습니다. 파일은 아래에 첨부해두었습니다. 이 내용이 유저 여러분께 조금이라도 도움이 되었으면 합니다.

IDL/Programming 2020.11.30

IDLnetURL 클래스를 이용하여 네트워크를 통한 파일 수신 하기

오늘은 IDL에서 네트워크를 통하여 파일을 수신하도록 코딩하는 방법에 관하여 소개해보기로 하겠습니다. 즉 HTTP 또는 FTP 연결을 통하여 어떤 파일을 다운로드하고자 할 때, IDL 코딩에 의하여 이러한 작업이 자동적으로 수행되도록 할 수 있다는 얘기입니다. 이러한 작업을 위해서는 IDLnetURL 클래스의 객체를 사용해야 합니다. '객체(Object)'라는 용어 때문에 다소 거창하게 느껴질 수도 있겠지만 그다지 어려운 개념은 아닙니다. 그러면 먼저 FTP를 통하여 파일을 수신하는 예제부터 살펴보도록 하겠습니다. 예제로 수신해보고자 하는 파일은 NASA의 SWPC에서 제공되는 TXT 포맷의 데이터 파일이고 링크는 아래와 같습니다. ftp://ftp.swpc.noaa.gov/pub/lists/xray/2..

IDL/Programming 2020.03.24
728x90