정보
- 업무명 : NetCDF 파일을 이용한 시각화 도구 소개
- 작성자 : 이상호
- 작성일 : 2020-02-03
- 설 명 :
- 수정이력 :
내용
[개요]
- 안녕하세요? 기상 연구 및 웹 개발을 담당하고 있는 해솔입니다.
- NetCDF 파일 (*.nc)은 대표적인 대용량 기상 자료의 포맷으로서 많은 연구에서 사용합니다.
- 따라서 다양한 가시화 및 분석 도구을 소개해 드리고자 합니다.
[가시화 도구]
- Ferret
- Ferret는 시애틀에 있는 Thermal Modeling and Analysis Project (TMAP)에 의해 수치 해상 모델의 출력을 분석하고 관측 자료와 비교하기 위해 개발되었습니다.
- 최근에 과학적 가시화를 위해 우수한 패키지들이 개발되었습니다. 특히 지구물리 계산 및 데이터베이스 연결 그리고 빅데이터 계산을 위한 메모리 관리가 있습니다.
yes? use "uwnd.mean.nc"
yes? !Use only the first time step for this plot
yes? set region/l=1
yes? contour uwnd
Data Visualization and Analysis | Science Data Integration Group - Ferret Support
ferret.pmel.noaa.gov
- Grid Analysis and Display System (GrADS)
- GrADS는 그리드 데이터를 분석하고 가시화할 수 있습니다.
- 즉 NetCDF 또는 HDF 파일을 SDF (Self Describing File) 인터페이스를 통해 간단하게 읽기 및 표출 기능을 제공합니다.
ga-> sdfopen uwnd.mean.nc
Scanning self-describing file: uwnd.mean.nc
Found displayable variable uwnd with 0 levels in SDF file.
Data file uwnd.mean.nc is open as file 1
LON set to 0 360
LAT set to -89 89
LEV set to 0 0
Time values set: 1980:1:1:0 1980:1:1:0
ga-> d uwnd
COLA Home Page
COLA is a scientific research center established to improve understanding and prediction of Earth's climate variations on seasonal, interannual, and decadal scales, with a special emphasis on the interactions between Earth's atmosphere, oceans, and land su
cola.gmu.edu
- Interactive Data Language (IDL)
- IDL은 ITT Visual Information Solutions의 상용 소프트웨어 패키지로서 NetCDF 파일을 읽을 수 있습니다.
- IDL v4.0 이상에서는 다음과 명령어를 통해 확인할 수 있습니다.
IDL. Version 4.0.1b (sunos sparc).
Copyright 1989-1996, Research Systems, Inc.
All rights reserved. Unauthorized reproduction prohibited.
Installation number: 1627-1.
Licensed for use by: Climate Diagnostics Center
% Compiled module: $MAIN$.
IDL> id = ncdf_open("/Datasets/coads1a.enh/sst.mean.nc")
IDL> sstid = ncdf_varid(id,"sst")
IDL> ncdf_varget, id, sstid, sst
IDL> contour, sst(*, *, 1)
IDL Software - Interactive Data Visualization Solution
Programmatically or interactively output to a variety of standard image formats, like GIF, JPEG, PNG, TIFF, EPS etc. or import graphics into PowerPoint, Keynote, or HTML presentations. Additionally, graphics can be output to PostScript or PDF for inclusion
www.harrisgeospatial.com
- NetCDF File Browser (ncBrowse)
- ncBrowse는 그래픽 디스플레이를 생성하고 netCDF 파일의 속성을 볼 수 있는 Java 어플리케이션입니다.
ncBrowse - netCDF file browser
ncBrowse is a Java application that provides flexible, interactive graphical displays of data and attributes from a wide range of netCDF data file conventions. Features Version 1.6.7 released. Minor bug fix. Version 1.6.6 released. Stopped using deprecated
www.pmel.noaa.gov
- Panoply
- Panoply는 NASA/GISS의 GUI NetCDF 뷰어입니다. 지도와 지역 평균을 표시할 수 있으며 원도우 (Window)와 리눅스 (Linux) 및 맥 (Mac)에서 사용할 수 있습니다.
NASA GISS: Panoply 4 netCDF, HDF and GRIB Data Viewer
Panoply netCDF, HDF and GRIB Data Viewer panoply \PAN-uh-plee\, noun: 1. A splendid or impressive array. ... Panoply plots geo-referenced and other arrays from netCDF, HDF, GRIB, and other datasets. Panoply is a cross-platform application that runs on Maci
www.giss.nasa.gov
PanoplyWin v4.10.11 - Google Drive
이 폴더에 파일이 없습니다.이 폴더에 파일을 추가하려면 로그인하세요.
drive.google.com
PanoplyWin v4.12.9 - Google Drive
이 폴더에 파일이 없습니다.이 폴더에 파일을 추가하려면 로그인하세요.
drive.google.com
- NCAR Command Language (NCL)
- NCL은 NCAR 명령 언어로서 NetCDF 파일도 읽을 수 있는 무료 소프트웨어입니다.
- 아래와 같이 명령어를 통해 파일 읽기 및 가시화할 수 있습니다.
f = addfile("slp.2002.nc", "r")
; convert to float [contributed.ncl]
slp =short2flt(f->slp)
; open a "x11", "ps" or "ncgm" file
wks =gsn_open_wks("ps", "slp_ce")
; create a default ce plot
plot=gsn_csm_contour_map_ce(wks, slp(0, :, :), False)
NCAR Command Language (NCL)
www.ncl.ucar.edu
- NetCDF Operator (NCO)
- NCO는 NetCDF 파일에서 사용하는 무료 소프트웨어입니다. 각 연산자는 ls 또는 mkdir과 같은 Unix (또는 Linux) 셸에서 실행되는 독립 실행형 명령 소프트웨어입니다. 또한 주로 그리드 과학 데이터의 조작 및 분석을 지원하도록 설계되었습니다.
- 즉 NetCDF 또는 HDF4 파일을 이용하여 여러 자료 처리 (예 : 평균화 또는 메타 데이터 조작 등)을 수행할 뿐만 아니라 NetCDF 형태로 출력도 가능합니다.
ncrcat 85.nc 86.nc 87.nc 88.nc 89.nc 8589.nc
NCO Homepage
Bienvenue sur le netCDF Operator (NCO) site Current stable NCO version is 4.9.1 released The NCO toolkit manipulates and analyzes data stored in netCDF-accessible formats, including DAP, HDF4, and HDF5. It exploits the geophysical expressivity of many CF (
nco.sourceforge.net
- CoastWatch Data Analysis Tool (CDAT)
- CDAT는 그리드 (Grid) 기후 데이터에 액세스하고 관리 할 수 있도록 설계된 소프트웨어입니다.
- 즉 객체 지향 언어를 사용하여 별도의 소프트웨어 하위 시스템과 패키지를 연결한 통합 환경이 있습니다. 이는 Python과 소프트웨어를 완벽하게 상호 연결하는 역할을 수행합니다.
- Python은 독립형 스크립트 (응용 프로그램) 및 그래픽 사용자 인터페이스 (GUI)를 비롯한 다양한 사용자 인터페이스를 지닐뿐만 아니라 범용 기능을 가진 스크립트 언어를 제공합니다. 그 결과 모듈 수치 계산을 위한 배열 연산 및 시각화에 대해 제공합니다.
- MATrix LABoratory (MATLAB)
- MATLAB은 광범위한 가시화 및 수치 계산이 가능한 고급 언어입니다. NetCDF 지원은 MATLAB 7.7 이상 버전에 내장되어 있습니다.
- 이전 버전의 경우 NetCDF 파일에 대한 MEXNC 인터페이스 (http://mexcdf.sourceforge.net)에서 사용할 수 있습니다.
- 그리고 NetCDF v4.0 지원은 R2010b에서 시작합니다.
MathWorks - MATLAB 및 Simulink 개발 회사
MathWorks Korea의 공식 홈페이지로서, MATLAB(매트랩) 및 Simulink(시뮬링크) 제품 및 서비스, 다운로드, 교육 및 강좌, 커뮤니티 등 다양한 정보를 제공합니다.
kr.mathworks.com
- Higher Level NetCDF Code
% MATLAB script to inquire about variable names and read in all variables
% from a netcdf file. Uses native netcdf support in MATLAB
%
% Usage:
% oid='myfile.nc';
% nc_readall
%
% Warning: this reads in variables and assigns them to the same variable name in MATLAB as in the netcdf file
% does not handle udunits, so time coordinate typically needs to be modified for use in MATLAB.
%
% oid file name or URL to a netcdf file
f = ncinfo(oid);
nvars = length(f.Variables);
for k = 1:nvars
varname=f.Variables(k).Name;
disp(['Reading: ' varname]);
eval([varname ' = ncread(''' oid ''',''' varname ''');']);
end
- Native NetCDF code
oid='https://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/noaa.ersst/sst.mnmean.nc'
sst=double(ncread(oid,'sst'));
nlat=double(ncread(oid,'lat'));
nlon=double(ncread(oid,'lon'));
mv=ncreadatt(oid,'/sst','missing_value');
sst(find(sst==mv))=NaN;
[Nlt,Nlg]=meshgrid(nlat,nlon);
%Plot the SST data without using the MATLAB Mapping Toolbox
figure
pcolor(Nlg,Nlt,sst(:,:,1));shading interp;
load coast;hold on;plot(long,lat);plot(long+360,lat);hold off
colorbar
%Plot the SST data using the MATLAB Mapping Toolbox
figure
axesm('eqdcylin','maplatlimit',[-80 80],'maplonlimit',[0 360]); % Create a cylindrical equidistant map
pcolorm(Nlt,Nlg,sst(:,:,1)) % pseudocolor plot "stretched" to the grid
load coast % add continental outlines
plotm(lat,long)
colorbar
oid = 'https://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/NARR/Monthlies/monolevel/prate.mon.mean.nc'
prate=ncread(oid,'prate');
nlat=double(ncread(oid,'lat'));
nlon=double(ncread(oid,'lon'));
scale = ncreadatt(oid,'/prate','scale_factor');
offset = ncreadatt(oid,'/prate','add_offset');
mv=double(ncreadatt(oid,'/prate','missing_value'));
mv = double(mv*scale+offset);
prate(find(prate>=mv))=NaN;
%Plot the NARR precipitation data using the MATLAB Mapping Toolbox
figure
axesm('robinson','Frame','on','Grid','on','maplatlimit',[0 88],'maplonlimit',[150 0],'MeridianLabel','on','ParallelLabel','on');
pcolorm(nlat,nlon,log(prate(:,:,1))) % pseudocolor plot "stretched" to the grid
load coast % add continental outlines
plotm(lat,long)
colorbar
figure
axesm('ortho','Grid','on','Frame','on','Origin',[40,250,14],'maplatlimit',[0 88],'maplonlimit',[150 0]); % Create a cylindrical equidistant map
pcolorm(nlat,nlon,log(prate(:,:,1))) % pseudocolor plot "stretched" to the grid
load coast % add continental outlines
plotm(lat,long)
colorbar
참고 문헌
[논문]
- 없음
[보고서]
- 없음
[URL]
- 없음
문의사항
[기상학/프로그래밍 언어]
- sangho.lee.1990@gmail.com
[해양학/천문학/빅데이터]
- saimang0804@gmail.com
'기상학·천문학 > 연구개발' 카테고리의 다른 글
[연구개발] 차세대 정지궤도 기상위성 천리안위성 2A호 (GK2A, GEO-KOMPSAT-2A) 소개 (1) | 2020.03.20 |
---|---|
[연구개발] 프로그래밍 : 과학자들을 위한 필수 기술 (0) | 2020.03.06 |
[연구개발] NetCDF 파일을 이용한 엑셀 (Excel) 변환 도구 소개 (0) | 2020.02.04 |
[연구개발] 기상위성 자료에 필요한 입력 자료 (위도 및 경도, 복사량 변환 테이블) 소개 (0) | 2020.01.09 |
[연구개발] 국내 기상/기후자료 데이터 시스템 이해 (0) | 2019.12.13 |
최근댓글