SMALL

분류 전체보기 731

Yale Bright Star Catalogue 데이터를 읽고 처리하기 [3]

지난 회차 게시물들(링크1, 링크2)에서는 Yale Bright Star Catalogue(예일 밝은 별 목록, YBSC) 목록자료를 공식 웹페이지에서 제공되는 바이너리 파일로 받아서 파일 내에 수록된 데이터를 IDL에서 배열로 읽어들이는 작업을 진행하였습니다. 그래서 5종의 항목들(일련번호, RA, Dec, Spectral type, V magnitude) 각각에 해당되는 cnums, ra_degs, dec_degs, types, vmags 배열들을 획득하였고 이들을 .sav 파일에 저장해두는 과정까지 완료된 상태입니다. 이제 오늘은 이 데이터를 사용한 표출 작업을 진행해볼텐데, 별들의 좌표 데이터(RA, Dec)를 이용하여 별들을 맵(Map) 상에 표시하는 방식으로 작업을 진행보고자 합니다. 참고로 ..

IDL/Programming 15:31:47

Yale Bright Star Catalogue 데이터를 읽고 처리하기 [2]

지난 회차 게시물에서는 Yale Bright Star Catalogue(예일 밝은 별 목록, YBSC) 목록자료를 공식 웹페이지에서 제공되는 바이너리 파일로 받아서 파일 내에 수록된 데이터를 읽어들이는 작업을 진행해보았습니다. 여기서는 헤더 부분을 먼저 읽어서 넘기고 바로 뒤에 이어지는 첫번째 레코드만 읽어서 각 항목별 값들을 얻는 방법을 중심으로 설명한 바 있습니다. 이제 오늘은 바이너리 파일에 수록된 데이터 전체를 모두 읽어오는 작업을 진행할 것입니다. 따라서 맨 처음 헤더 부분을 읽고 넘기는 과정부터 다시 시작해봅니다. file = 'BSC5'result = READ_BINARY(file, DATA_DIMS=7, DATA_TYPE=3) 이와 같이 바이너리 파일 'BSC5'의 맨 앞에 위치한 헤더 부..

IDL/Programming 2025.03.27

Yale Bright Star Catalogue 데이터를 읽고 처리하기 [1]

Yale Bright Star Catalogue(예일 밝은 별 목록, YBSC)는 사람이 육안으로 관측할 수 있는 별들을 목록화하여 배포되고 있는 카탈로그 자료입니다. 여기서 "사람이 육안으로 관측할 수 있는"의 기준은 공식 웹페이지의 설명에 의하면 별의 겉보기 등급(Apparent Magnitude or Visual Magnitude)이 대략 7.0 이하인 경우들인 것으로 언급되고 있습니다. 참고로 밝기 등급은 그 값이 작을수록 밝고 클수록 어둡습니다. 이 목록에 등재된 별들의 갯수는 총 9110개이며 해당 목록 자료는 앞서 언급한 공식 웹페이지에서 배포되고 있습니다. 그래서 이 YBSC 목록 자료를 받아서 IDL에서 처리하고 관련된 표출까지도 진행해보는 과정을 수 차례에 걸쳐서 소개해보고자 합니다. ..

IDL/Programming 2025.03.25

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

지난 회차 게시물에서는 IDL에서 색상을 채운 플롯을 표출하는 방법을 소개하였는데, 수평 방향으로 색상을 채운 플롯을 표출하는데 있어서 기본적으로는 FILLPLOT 함수를 사용하면 되지만 그냥 PLOT 함수를 사용해도 구현이 가능하다는 것도 확인한 바 있습니다. 오늘은 이어지는 순서로서 연직(수직) 방향(Vertical Direction)으로 색상을 채운 플롯을 구현하는 방법을 살펴보고자 합니다. 사실 연직 방향의 경우는 구현 방법이 약간 다릅니다. 일단 FILLPLOT 함수는 연직 방향의 플롯에 대하여 색상을 채우는 기능을 지원하지 않는다는 것을 유의해야 합니다. 오직 수평 방향의 플롯에 대하여 색상을 채우는 것만 가능합니다. 따라서 오늘의 작업에서는 FILLPLOT 함수는 등장하지 않습니다. 그 대신..

IDL/New Graphics 2025.03.13

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

IDL에서 플롯의 선 사이를 색상으로 채워서 표출하기 위해서는 기본적으로 FILLPLOT 함수를 사용하면 됩니다. 이 함수는 IDL 8.7.2 버전에서 처음 도입되었으며 이 블로그에서도 예전에 관련 게시물을 통하여 간단히 소개를 한 바 있습니다. 다만 이번에는 색상을 채운 플롯을 표출하는 방법이라는 주제로 좀 더 일반화를 시켜서 FILLPLOT 함수를 사용하는 방법 및 그 외의 경우들도 자세히 소개해보고자 합니다. 오늘은 먼저 FILLPLOT 함수를 사용하는 방법을 중심으로 관련 예제들과 함께 살펴보겠습니다. 먼저 예제 데이터를 생성해봅시다. 그 과정은 다음과 같습니다. n = 21 x = FINDGEN(n) y1 = SIN(x)*10+15+RANDOMU(-1, n)*6-3 y2 = SIN(x)*10+3..

IDL/New Graphics 2025.03.10

VECTOR 함수로 바람깃(Wind Barb) 표시하기 [2]

IDL에서 벡터들을 가시화하기 위하여 사용하는 VECTOR 함수는 벡터들을 화살표 형태로 표시할 수 있을 뿐 아니라 기상 분야에서 자주 사용되는 바람깃(Wind Barb)의 형태로 표시하는 기능도 함께 지원합니다. 그래서 VECTOR 함수를 이용하여 벡터들을 바람깃의 형태로 표출하는 방법을 관련 예제와 함께 지난 회차 게시물에서 소개한 바 있습니다. 오늘은 이어지는 내용으로서 바람깃들을 단일 색상으로 표시하는 대신 컬러테이블을 적용하여 다양한 색상으로 표시하는 방법을 살펴보도록 하겠습니다. 먼저 가상의 바람 데이터를 생성 및 정의하는 과정은 지난번과 동일합니다. 일단 다음과 같은 내용으로 시작해봅시다. x = [20, 30, 60, 80] y = [50, 40, 30, 70] u = [2.1, 11.6,..

IDL/New Graphics 2025.02.25

VECTOR 함수로 바람깃(Wind Barb) 표시하기 [1]

IDL에서 다수의 벡터(Vector)들을 화살표의 형태로 표시하는 기능을 담당하는 VECTOR 함수에 관해서는 이미 몇몇 관련 게시물들(링크1, 링크2)을 통하여 소개한 바 있습니다. 그런데 이 게시물들에서는 벡터들을 화살표(Arrow)의 형태로 표시하는 방법 위주로만 소개를 하였습니다. 물론 VECTOR 함수의 주 기능은 벡터들을 화살표 형태로 표시하는 것이긴 합니다. 하지만 화살표(Arrow) 외에도 바람깃(Wind Barb)의 형태로 표시하는 기능도 포함되어 있습니다. 이러한 방식의 표출은 특히 기상 분야에서 자주 사용되는 방식이기도 합니다. 그래서 VECTOR 함수를 사용하여 벡터들을 바람깃(Wind Barb)의 형태로 표시하는 방법에 촛점을 맞춰서 관련 예제와 함께 살펴보는 내용을 2회에 걸쳐서..

IDL/New Graphics 2025.02.20

각도의 변환 (십진수와 DMS 단위) : EOS_EH_CONVANG 함수

우리가 각도(Angle)의 값을 나타낼 때 십진수 단위(Decimal)로 나타내는 방식과 도/분/초 단위(DMS)로 나타내는 방식이 공존합니다. 예를 들어서 십진수 단위의 각도 값이 27.5도인 경우 이 각도는 도/분/초 단위로는 27도 30분 00초가 됩니다. 그리고 이러한 단위 사이를 상호변환해야 하는 경우들이 종종 있습니다. IDL에서도 이러한 변환 기능을 담당하는 함수가 지원되는데 바로 EOS_EH_CONVANG 함수입니다. IDL 도움말에서 이 함수에 관한 내용을 찾아보면 기본적인 문법은 다음과 같습니다. Result = EOS_EH_CONVANG(inAngle, code) 여기서 inAng는 투입되는 각도이고 code는 변환 작업의 종류를 나타내는 코드번호입니다. 총 6종의 변환 기능들이 지원..

IDL/Math 2025.02.11

기상청 ASOS 자료의 공간 분포 표출 [3]

지난 회차 게시물들(링크 1, 링크 2)에서는 기상청 ASOS 장비의 기상요소 관측자료를 기상자료 개방포털 웹페이지에서 CSV 파일로 수신한 다음 이 파일을 IDL에서 읽고 처리하여 특정한 시각에 대한 모든 지점들의 기온 값을 한반도 지도상에 표출하는 과정을 살펴본 바 있습니다. 또한 지점별로 존재하는 기온 값들에 대하여 Kriging 기법을 적용하여 일정한 경위도 범위의 격자 데이터로 환산하여 표출하는 과정도 이어서 살펴보았습니다. 이와 같이 이전 게시물들에서는 기상요소들 중 기온에 중점을 두고 살펴보았는데요. 그 외에도 습도나 기압 등과 같은 기상요소들도 유의미한 값 범위는 좀 다르겠지만 표출 방식 자체는 본질적으로 크게 다르지 않습니다. 따라서 처리 및 표출 과정은 기온에 대한 예제를 살짝 수정하면..

IDL/Programming 2025.02.04

기상청 ASOS 자료의 공간 분포 표출 [2]

지난 회차 게시물에서는 기상청 ASOS 장비의 기상요소 관측자료를 기상자료 개방포털 웹페이지에서 CSV 파일로 수신한 다음 이 파일을 IDL에서 읽고 처리하여 특정한 시각에 대한 모든 지점들의 기온 값을 한반도 지도상에 표출하는 과정을 소개한 바 있습니다. 여기서는 BUBBLEPLOT 함수를 사용하여 각 지점의 위치에 버블이 표시되면서 그 색상이 기온 값에 따라 차등적으로 보이도록 하였습니다. 그런데 이와 같이 지점별로 존재하는 데이터를 바탕으로 일정한 경도 및 위도 범위의 격자들을 가정하여 2차원적인 격자 데이터로 계산하여 표출하는 것이 필요한 경우도 있습니다. 즉 불규칙한 분포를 하는 데이터들을 규칙적인 격자 데이터로 변환하는 작업인데, 이러한 변환 작업에 사용되는 여러가지 계산 기법들 중 Krigi..

IDL/Programming 2025.01.27
728x90