UDAS egg 操作マニュアルfor UDAS egg 1.00
2018年９月13日

IUGONETプロジェクトチーム
1

UDAS egg とはUDAS egg は、SPEDAS未対応の科学データを簡単に読込み・解析するためのIDL/SPEDAS用プログラムテンプレート です。
このマニュアルに従って、(1) プログラムコード上にマークされた箇所を書き換えるだけで、(2) またはデータの読み込み方法を設定するだけで、すぐに可視化・解析できます。

ラインプロット

カラーコンター

Windows,MacOS, Linux
で動くよ

他のデータとの組合せ

IDL（Interactive Data Language）は、データの解析と可視化に特化した配列指向型のプログラミング言語です。
SPEDAS（Space Physics Environment Data Analysis Software）は、THEMIS, MMS, GOES, ERG など、様々な科学衛星と地上観測により得られた科学データを可視化・解析するための、IDLで記述されたパッケージソフトウェアです。詳しくは提供元のウェブサイトをご覧ください。 IDL: https://www.harrisgeospatial.com/ SPEDAS: http://spedas.org/

2

SPEDAS（UDAS含む）との違い

解析ルーチン（ロードプロシージャ）の作成

可視化・解析したい
データファイルの取得元

CUI

GUI

難解

簡単

不要

科学データごとに作成する必要ありテンプレートから10行程度変更すればOK

汎用ルーチン組込済

オンラインサーバ

パソコンから直接もパソコンから直接インターネット接続されたサーバからインターネット接続 またはパソコンからファイルを選択

パソコンからファイルを選択*

インターネット取得にも今後対応予定

解析ルーチンの作成に困っている方、プログラム作成よりも研究に時間を使いたい方 にぴったりです。ダウンロードして、SPEDASに組み込んで使います。
3読み込めるファイルの種類と可視化の例
1. CDF (Common Data Format)

ラインプロット

カラーコンター4

読み込めるファイルの種類と可視化の例
2. ASCII Format
0. 単純時系列データ

時刻

1. vデータ（Y軸構成値）を含む縦方向データ 2. vデータ（Y軸構成値）を含まない横方向データ

データ種
1

2

3

時刻...

y1

y2...

1994/09/28 15:05:00, 1.998, -12.0, …
1994/09/28 15:05:00, 2.145, -11.3, …
1994/09/28 15:05:00, 2.293, -9.7, …
1994/09/28 15:05:00, 2.441, -9.1, …
1994/09/28 15:05:00, 2.589, -8.0, …
1994/09/28 15:05:00, 2.736, -10.3, …
1994/09/28 15:05:00, 2.884, -9.4, …
1994/09/28 15:05:00, 3.032, -8.5, …
1994/09/28 15:05:00, 3.179, -6.9, …
1994/09/28 15:05:00, 3.327, -7.1, …
…

1994/09/28 15:00:07, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:12, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:17, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:22, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:27, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:32, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:37, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:42, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:47, 964.0, 20.4, 100.0, ...
1994/09/28 15:00:52, 964.0, 20.4, 100.0, ...
...

横方向にデータ種、縦方向に時系列

データ種
v

データは、Y軸を構成する値。例えば、大気デー
タにおける高度や、スペクトルデータにおける周波数、レーダーデータにおけるレンジ等にあたる。
縦軸がvデータv

時刻

yy

...

1994/09/29 00:05, -12.0, -11.3, -9.7, -9.1, ...
1994/09/29 00:15, -12.2, -12.1, -11.7, -11.5, ...
1994/09/29 00:25, -12.8, -11.5, -11.1, -10.9, ...
1994/09/29 00:35, -10.5, -11.1, -10.6, -10.8, ...
1994/09/29 00:45, -12.9, -12.7, -10.9, -12.4, ...
1994/09/29 00:55, -13.6, -13.9, -12.6, -12.2, ...
1994/09/29 01:05, -11.2, -11.1, -11.1, -10.4, ...
1994/09/29 01:15, -10.5, -10.2, -11.4, -10.8, ...
1994/09/29 01:25, -11.5, -11.1, -11.6, -10.9, ...
1994/09/29 01:35, -12.6, -12.5, -11.8, -12.0, ...
…

パターンBのyデータが横方向に並ぶパターン。v
データ（縦軸に相当）のベクトルは可視化の際に与える。

カラーがyデータ

ラインプロット

データ種y

カラーコンター

バイナリ形式やオリジナル形式のファイルも、上記の ASCII 形式に変換すれば UDAS egg で読むことができます。
トラフィックや変動・変遷などの社会データ、環境や人体情報などの測定データも、すぐに読むことができます。

カラーがyデータ

カラーコンター5

はじめてみよう
1. 事前準備

CUI

2. 作成と読み込み

3. 実行

テンプレートにアレンジを加えて自分のものに！

あるIDLライセンスはありますか？

インストールしてIDL環境に構築しよう
p.7

テンプレートをプロットをもっと解析

書き換えよう

表示しよう

してみよう

p.8

p.15

p.20

ないGUI

データファイルがあれば解析できます！

インストール

データファイルをプロットをしよう

読み込もう

表示しよう

p.16

p.17

p.19

はどんどんアレンジしてね

CUI

UDAS egg にはアレンジした例も入っています。
6

CUI

1. インストールしてIDL環境に構築しよう

1. SPEDAS 3.0 ソースコード版をダウンロードして、開発環境を構築します。
（SPEDAS環境がまだ構築されていない場合のみ）
SPEDAS 3.0 ダウンロードと、開発環境構築の方法: http://themis.ssl.berkeley.edu/software.shtml

2. UDAS egg をダウンロードして、IDL開発環境に追加します。
UDAS egg ダウンロード: http://www.iugonet.org/product/analysis.jsp

1. UDAS egg （zip形式）をダウンロードします。
2. 解凍してできたディレクトリを、開発環境にコピーします。
コピー先に困ったら、SPEDASと同じように、C:¥Program Files¥Exelis¥IDL8x¥external¥ 配下にしましょう。

3. IDLを起動して、[ウィンドウ] タブから [設定] [IDL/パス] を選んで、SPEDAS と UDAS egg の両方にパスを通します。

3. IDLワークベンチで以下のコマンドを入力し、正常終了すればインストールは成功です。
インストールは成功しています。
7

CUI

2. テンプレートを書き換えよう

1. テンプレートファイルをコピーして、新しいファイルを作成します。
コピー元ファイル
CDFの場合: loadproc_template_cdf.pro
ASCIIの場合: loadproc_template_ascii.pro
ここでは、例として、loadproc_mag.pro という名前にコピーして、ルーチンを作成します。

2. 新しく作成したファイルを編集します。

*印： 必須項目

pro loadproc_mag, site=site, datatype=datatype, $trange=trange, verbose=verbose, downloadonly=downloadonly, $no_download=no_download* pro loadxxxxx: 解析ルーチン名
新しく作成したファイル名と同じ名称を指定します。この名称は、実行時のコマンド名に相当します。

8

CUI

2. テンプレートを書き換えよう

2. 新しく作成したファイルを編集します。（Step.1: 環境設定）*印： 必須項目;********************************;;***** Step1: Set paramters *****;;********************************;
local_data_dir = root_data_dir() + 'test/' ; Base local directory
remote_data_dir = 'http://www.iugonet.org/data/pub/' ; URL for data files
acknowledgement = 'You can write the data use policy here.' + $'This description is displayed when you use this load procedure.'site_list = 'stn'
datatype_list = '1min'* local_data_dir: 保存先基底パス
ダウンロードしたデータファイルを手元に保存する際の親ディレクトリを指定します。
上図の場合、windowsでは C:¥data¥test¥ に保存されます。

* remote_data_dir: データ基底URL
データファイルが置いてあるウェブサイトのURLのうち、固定箇所までを指定します。

acknowledgement: データ利用ポリシー
ルーチンを実行した際に表示する、データの利用ポリシーを指定します。

*site_list: 観測所リスト
観測地点をリストで指定します。複数存在する場合は、‘stn1 stn2 stn3’ のように、半角空白文字で区切って入力します。何も存在しない場合はダミー値を1つ入力します。実行時のsiteキーワードとその値に相当します。

*datatype_list: データ種リスト
サンプリングタイムや波長、観測モード、ファイルのバージョンなど、観測モードなどを指定します。何も存在しない場合はダミー
値を1つ入力します。実行時のdatatypeキーワードとその値に相当します。
9

CUI

2. テンプレートを書き換えよう

2. 新しく作成したファイルを編集します。（Step.2: 環境設定の続き）*印： 必須項目;***********************************************;;***** Step2: Make pathnames and filenames *****;;***********************************************;
pathnames = site[isite] + '/' + yyyy + '/' + mm + '/' + dd + '/'filenames = site[isite] + '_' + datatype[idt] + '_' + yyyymmdd + '.cdf'* pathnames: 保存先パスデータファイルを保存する子ディレクトリを指定します。

* filenames: データファイル名形式
データファイル名の形式を指定します。上図の例では、stn_1min_20180401.cdf の形式になるよう組み立てています。

ダウンロードしたデータファイルは、local_data_dir + pathnames に保存されます。
（上図の例では、 C:¥data¥test¥stn¥YYYY¥MM¥DD¥ となるように指定しています。）

パソコンの中にあるデータファイルを読みたい場合は、 あらかじめ、local_data_dir + pathnames の中にデータファイルを置いておきます。
日時を示す変数は以下の通りです。
yyyy

年4桁mm

月（01〜12）dd日（01-31）

yyyymmdd

年⽉⽇（例：20180601）
10

CUI

2. テンプレートを書き換えよう

2. 新しく作成したファイルを編集します。（Step.3: 読込み設定）;*************************************************;;***** Step3: Load data into tplot variables *****;;*************************************************;;----- For ASCII format files -----;
format_type=0 ; 0:xy, 1:xyv_1, 2:xyv_2
tformat='YYYY-MM-DD hh:mm:ss.fff'
delimiter=','
data_start=0
comment_symbol= '#'tvar_column=[1, 2, 3, 4]
tvarnames='tplotvar_name'*印： 必須項目
ASCIIの場合* format_type: ファイルタイプ形式
巻頭に示したファイルタイプのうち、読み込むデータファイルがどのタイプにあたるか、0～2の数値で指定します。

* tformat: 時刻形式
データファイルに記載されている日時の形式を指定します。

* delimiter: デリミタ形式
データの区切り文字を指定します。

data_start: データ開始行
読み飛ばす行数を指定します。指定しない場合は0が適用されます。

comment_symbol: コメント行
コメントアウト文字列（読み込まないレコード）を指定します。指定しない場合はすべて読込みの対象となります。

11

CUI

2. テンプレートを書き換えよう

2. 新しく作成したファイルを編集します。（Step.3: 読込み設定）;*************************************************;;***** Step3: Load data into tplot variables *****;;*************************************************;;----- For ASCII format files -----;
format_type=0 ; 0:xy, 1:xyv_1, 2:xyv_2
tformat='YYYY-MM-DD hh:mm:ss.fff'
delimiter=','
data_start=0
comment_symbol= '#'tvar_column=[1, 2, 3, 4]
tvarnames='tplotvar_name'*印： 必須項目
ASCIIの場合* tvar_column: 読込み列
日時列を除く列のうち、何列目を読み込むかを指定します。日時列を除いて0から数えます。

* tvarnames: tplot変数名
読み込んだ値を格納する構造体（tplot変数）の名前を指定します。自分が分かりやすい名前を付与します。

v_column: vカラム番号指定
format_type=1 の場合のみ使います。日時を除く列のうち、何列目をvdata（縦軸データ）に使うかを指定します。

vvec: 読込み列
format_type=2 の場合のみ使います。 vdata（縦軸データ）の値（ベクトル）を入れます。

12

CUI

2. テンプレートを書き換えよう

2. 新しく作成したファイルを編集します。（Step.3: 読込み設定）;*************************************************;;***** Step3: Load data into tplot variables *****;;*************************************************;;----- For CDF format files -----;
prefix = 'test_' + site[isite] + '_' + datatype[idt] + '_';
suffix = '_' + site[isite] + '_' + datatype[idt]*印： 必須項目CDFの場合* prefix: tplot変数名接頭辞読み込んだデータを格納する構造体（tplot変数）名の接頭辞を指定します。自分が分かりやすいものを付与します。
上図の例ではtest_stn_1min_ という接頭辞を付与しています。

suffix: tplot変数名接尾辞
tplot変数の名前の後ろに加える接尾辞を指定します。（指定しない場合が多数です。）

13

CUI

2. テンプレートを書き換えよう

2. 新しく作成したファイルを編集します。（Step.4: その他のカスタマイズ） *印： 必須項目;**********************************************;;***** Step4: Options for tplot variables *****;;**********************************************;;----- Missing data --> NaN -----;
tclip, tvarnames, -1e+5, 1e+5, /overwrite;----- Ylim -----;
ylim, tvarnames, -1000, 1000;----- Labels -----;
options, /def, tvarnames, labels=['Bx', 'By', 'Bz', 'Bt'], $ytitle = 'Tatejiku', $ysubtitle = '[Unit]', labflag=1, colors=[2, 4, 6, 0]

tclip行の数値: NaN置換範囲
この範囲を超えた場合、値をNaNに置き換えます。NaNに置換すると、SPEDASでは可視化対象外と扱われ、ラインプロットでの突出した異常線、カラーコンターでの異常な色付けなどを防ぐことができます。

ylim行の数値: Y軸範囲Y軸の最小値と最大値を設定します。後でSPEDASの機能を使って設定することも可能です。

options行
labels : ラベル プロットに付与するラベルを指定します。改行は!Cで指定します。
ytitle: Y軸タイトル Y軸のタイトルを指定します。改行は!Cで指定します。
ysubtitle : Y軸サブタイトル Y軸のサブタイトルを指定します。改行は!Cで指定します。
labflag : ラベル有無 0: 表示なし、1: 表示あり を指定します。
colors : プロットの色 0: 黒、1: マゼンダ、2: 青、3: シアン、4: 緑、5: 黄、6: 赤 を指定します。

14

CUI

3. プロットを表示しよう

1. IDLを起動して、下記のコマンドを実行しましょう。
IDL> thm_init
作成したルーチンをコンパイルします。
THEMIS> timespan, '2018-05-20'
THEMIS> .r loadproc_mag
作成したルーチンを実行します。
site_list またはdatatype_list を定義した
THEMIS> loadproc_mag, site='stn', datatype='1min'
場合は、ここに、キーワードとして、読込み
THEMIS> tplot_names
たい値を値を与えます。
1 mag_stn_1min
THEMIS> tplot, 'mag_stn_1min'
Step.3で定義したtplot変数が作成されます。
可視化の例
ylim
（Y軸範囲）

tclipのNaN置換範囲

置換を設定すると、このような突出線を可視化するかどうか、選択できます。
NaN

できた！

ytitle（Y軸タイトル）ysubtitle（Y軸サブタイトル）

labflag（ラベル有無）とlabel（ラベル）color（プロットの色）

15

GUI

1. インストールしよう

1. SPEDAS 3.0
Executables版（GUI）を入手します。
Executables版（GUI）をダウンロードします。
SPEDAS 3.0 ダウンロードと、開発環境構築の方法:
IUGONET開発員から、UDASegg に対応したExecutable版を入手します。
http://themis.ssl.berkeley.edu/software.shtml

2. SPEDASの [File] タブに [Load Your Data] メニューがあれば使えます。

UDAS egg を使えるバージョンです。

16

GUI

2. データファイルを読み込もう

1. [File] タブから [Load Your Data] を選択します。
2. データファイルをどのように読み込むかを指定します。
CDFの場合は、読み込みたいファイルを選択して、以降はすべて [OK] を選択します。
ASCIIの場合は、下図に従います。

読み込みたいデータファイルを指定します。

ファイルの形式を指定します。（0～2、巻頭を参照）

デリミタ文字（データの区切り）を入力します。

データの列番号（日時列を含まずに0から数えた列位置）を指定します。（Format Type =1 の場合のみ）
V

日時の形式を指定します。
リストにない場合は、Specify欄で入力します。

読み飛ばす行数と、コメントアウト文字列（読み飛ばすレコード）を指定します。
読み込む列の番号を入力します。
読み込んだデータに付与する名前を入力します。

OKボタンを押します。
17

GUI

2. データファイルを読み込もう

3. tplot変数の階層に付与する名称を入力します。

読み込んだデータに付与する名前を入力または確認します。

データがSPEDASに読み込まれてtplot変数が生成された際の、ツリー構造の名称を入力します。
他のデータと組み合わせたい場合に、分かりやすくなります。

OKボタンを押します。

18

GUI

3. プロットを表示しよう

1. SPEDASに戻り、[Graph] タブから [Plot/Layout Options] を選択します。

データが読み込まれると、tplot変数として、左側のパネルに表示されます。

SPEDASの通常の操作と同じく、可視化したいtplot変数を選んで、OKを押します。

19

もっと解析してみよう
講習テキスト（共通編）を見ながら、読み込んだデータに解析を加えてみましょう。
可視化の例
Geotail衛星の太陽風データを、SPEDASで追加読込みしました。

信楽MUレーダー対流圏・成層圏風速データを1. Shellでファイル加工して、2. UDAS egg で読み込んで、3. v成分値をFFTしました。

地上風速データ（ASCII）を1. UDAS egg で読み込んで、2. 南北方向成分値をFFTしました。

地磁気指数を、SPEDASで追加読込みしました。

もう大丈夫

うんだね

20

動作環境と注意事項
動作環境（2018年9月現在）
OS

Windows / MacOS / LinuxIDL

8.0以上 ※GUIはIDLライセンス不要

SPEDAS
対応フォーマット

2.0以上 （3.0以上を推奨）
CDF（Common Data Format）
アスキーフォーマット

注意事項
1. UDAS egg を利用する場合は、IUGONETプロジェクトの利用規則に従ってください。
利用規約 http://www.iugonet.org/rules/
2. UDAS egg を使用の際、ご自身のパソコンのハードウェアおよびソフトウェア、資産、そのほかに損害が生じてもIUGONETでは責任を負いかねます。ご了承ください。

21