CUIの使い方（前編）（ロード、プロット、画像ファイル出力等）
2016年10月20日
第3回「太陽地球環境データ解析に基づく超高層大気の空間・時間変動の解明」
データ解析セッション

阿部修司（九大ICSWSE）
1

SPEDASによる2015年6月磁気嵐のプロット
本セクションでは、実際のイベントデータを読み込み、処理し、表示することでSPEDASの使い方を学んでいく。
例として使うのは、2015年6月23日の磁気嵐イベント（Summer Solstice 2015 event）

 SPEDAS使用のおおまかな流れ 環境を初期化する
 解析する時間幅を入力する
 load procedureでデータを読む tplot変数を確認する
 そのままプロットする
 データや時間幅を処理してプロットする
 データや図を保存する
2

環境を初期化する
THEMIS〉.full_reset_session
またはTHEMIS〉.reset_sessionを入力すると、プロンプトが IDL> に戻る。※これはIDLコマンドです.reset_sessionでは、メモリ上の変数やプロシージャを消去しシステム変数、グラフィックス環境を初期化する。
.full_reset_sessionは、上記に加え、DLMなどの共有ライブラリ関連のアンロードや初期化などをおこなう。

改めて thm_init でSPEDASを起動するTHEMIS〉.full_reset_session
IDL〉thm_init
THEMIS〉
3時間の取り扱い
解析時間幅は、以下の書式で入力
THEMIS〉timespan,’yyyy-mm-dd/hh:mm:ss’[,n,/<option>]
2015年6月22日から2日間を指定する

THEMIS〉timespan,’2015-06-22’,2,/day
設定したtimespanを確認する

THEMIS〉get_timespan,time
THEMIS〉print, time
THEMIS〉print, time_string(time)

SPEDASで取り扱う時間は、内部的には倍精度少数のUNIXTIME（1970年1月1日を起点とした累積秒）。
文字列を累積秒に変換するtime_double()もある

4load procedureでデータを読む
データの読み込みは、各機関提供のload procedureを使う(詳細は、各load procedureや、crib sheetを読むと良い)
THEMIS〉omni_hro_load
THEMIS〉iug_load_gmag_nipr, site =‘syo’
THEMIS〉iug_load_gmag_mm210, site =[ ‘msr’, ‘ktb' ]THEMIS〉kyoto_load_dst※複数のパラメータを指定する時は大かっこで囲み、コンマで区切る。
文字列はシングルクォーテーションで囲む

以上の操作で読み込んだもの– OMNI2 data（time shiftさせた太陽風、IMF データ、及び各種地磁気指数など）– NIPRの昭和基地観測点地磁気– 210MMの茂尻とコトタバン観測点地磁気– 京大WDCのDst指数(リアルタイム値5load procedureでデータを読む
データを読み込んだとき、各機関のrules of the roadがポップアップする、もしくはIDLウィンドウに表示される。内容を必ず確認しておこう！データ提供者から利用者に対して、守るべきルールや謝辞の方法などが記載されている← NIPR All-sky Keogramの例※このウィンドウは、GUIでデータを読み込んだ際に表示される↓ kyoto_load_dstの例（コンソール上）

6tplot変数を確認する
THEMIS〉tplot_names
上記で、tplot変数番号と名前の一覧がコンソールに表示される
THEMIS> tplot_names
1 OMNI_HRO_1min_IMF
2 OMNI_HRO_1min_PLS
3 OMNI_HRO_1min_IMF_PTS
4 OMNI_HRO_1min_PLS_PTS…
50 kyoto_dst
読み込まれたデータは、tplot変数と呼ばれる特殊な変数に格納されている（構造等は後編で紹介）
7

tplot変数を確認する
THEMIS〉tplot_names, tplot変数名or 番号,/verbose
THEMIS〉tplot_names, ‘OMNI_HRO_1min_IMF’ ,/verbose

Verboseキーワードで、各tplot変数の詳細（データの単位や詳細、観測点の緯度経度、連絡先などの各種メタデータ情報）を知ることができる
8そのままプロットする
THEMIS〉tplot,[‘tplot変数名’,またはtplot変数番号 …]
THEMIS> tplot,['OMNI_HRO_1min_F','OMNI_HRO_1min_BZ_GSM','mm210_mag_msr_1sec_hdz','kyoto_dst']

tplot変数名を番号で置き換えても良い（tplot,[10,15,44,50]）
プロットする要素が1つの場合、[]を省略可
9データを分割、まとめる
THEMIS〉split_vec,’tplot_name’
THEMIS〉join_vec,[‘tplot_name’,…] _tplot_variable_name’
THEMIS> split_vec, 'mm210_mag_msr_1sec_hdz'THEMIS> join_vec, [11,12,13], 'OMNI_HRO_1min_BXYZ_GSE'
THEMIS> tplot, [44,51,52,53,54,50]

split_vecでデータを成分ごとに分離、また、join_vecで各成分をひとつのtplot変数にまとめる
10

プロットの体裁を整える1
THEMIS〉tplot_options,’parameter_name’,’value’
THEMIS> tplot_options, ‘region’, [0.1, 0, 1, 1]
THEMIS> tplot_options, ‘title’, ‘Summer Solstice 2015 event’
THEMIS> time_stamp,/off
THEMIS> tplot

tplot_optionsは、プ
ロット全体に関する様々な描画オプションを設定する。
11

プロットの体裁を整える2
THEMIS〉options,’tplot_name’,’parameter_name’,’value’
THEMIS> options,44,'labels',['H','D','Z']
THEMIS> options,52,'ytitle','Moshiri!CMagnetometer'
THEMIS> options,53,'ysubtitle','nanotesla‘
THEMIS> tplot

optionsは、各tplot変数に対して様々な描画オプションを設定する。
12

時間幅を変更する
THEMIS〉tlimit,’starttime’,’endtime’
THEMIS> tlimit, ‘2015-06-22/16:00:00’, ‘2015-06-22/22:00:00’

tlimitで表示時間幅を変更する。
Lastキーワードでひとつ前の時間軸、fullキーワードでtimespanで指定した時間幅。キーワードなしの場
合、マウス操作で時間軸を指定できる（ただし、Macではうまく動かない）
13

データや時間幅を処理してプロットする
THEMIS〉ylim, ‘tplot_name, min, max,[0,1]
THEMIS〉zlim, ‘tplot_name, min, max,[0,1]
THEMIS> ylim,53, 80, 120
THEMIS> tplot

y軸、z軸のプロット範囲を変更する。
4番目の引数は0=linear、1=logスケール。minとmaxを両方0にすると全てのデータ範囲を含む軸になる。

14

プロットを画像として保存する1
THEMIS〉makepng, ‘filename’
THEMIS> makepng, cui_01

現在指定されているウィンドウがPNGとして保存される。事前にウィンドウサイズを変更して描画することで、解像度やアスペクト比を変えて保存ができる。

15

プロットを画像として保存する2
THEMIS〉popen, ‘filename’[,/landscape]
THEMIS〉tplot
THEMIS〉pclose
THEMIS> popen, ‘cui_02’
THEMIS> tplot
THEMIS> pclose
描画したウィンドウを画像にする
PNGと違い、ファイルを開く→描画する→ファイルを閉じる の流れになっていることに注意。landscapeキーワードをつければ横長になる。

16

データをファイルとして保存する1
THEMIS〉tplot_save, ‘tplot_name’, filename=filename
THEMIS〉tplot_restore, filename=filename
tplot_saveはバイナリ形式でデータを吐き出す。filenameを指定しない場
合、tplot_saveではsaved.tplotとして保存される。引数なしの場合、tplot_saveは全てのtplot変数を保存するので注意。tplot_saveで保存したファイルを読み込む
THEMIS> tplot_save, ‘nipr_mag_syo_1sec’,filename=‘nipr_mag’
THEMIS> store_data, ‘*’, /delete
THEMIS> tplot_restore,
filename=‘nipr_mag.tplot’
THEMIS> tplot_names

昭和基地の地磁気データ
をファイルに保存
全てのtplot変数を消去
昭和基地の地磁気データ
ファイルを読み込み

17データをファイルとして保存する2
THEMIS〉tplot_ascii, ‘tplot_name’
THEMIS> tplot_ascii, 'nipr_mag_syo_1sec'

テキスト形式でデータを吐き出す。tplot変数名がファイル名になる（filename
キーワードは取らない）。

18

まとめまとめ• 本スライドでは– 解析時間の設定– プロットの描きかた– プロットの体裁の変更– プロットの画像ファイル化– データの保存、再読み込みなど、SPEDASを利用するにあたって基本的なことを学んだ• 続くCUI編2では、tplot変数の詳細や、実際のデータ解析方法について学んでいく
19