idl legend を使って凡例を付ける方法

IDL

idl legend() を使って凡例を付ける方法

idl の legend() 関数を使って、グラフに凡例を付ける方法を紹介します。

この記事の対象者は、idl の plot() 関数を使った図の出力はできるようになったけど、
図の凡例の付け方が分からなくて困っている人です。

この記事を読んで、その内容を実践すれば、図の凡例が簡単に付けられるようになるはずです。

興味のある方は、そのまま読み進めていただければと思います。

それでは、参りましょう:)

legend() の文法

legend() 関数の、基本的な文法は以下の通りです。

plt0 = plot(...)

plt1 = plot(..., /overplot)

; legend() 
plt_legend = legend($
    target = [plt0, plt1],$
    position = [xUpperRigth, yUpperRight],$
    /data,$
    /auto_text_color)

legend() を使う時に定義する引数は基本的に以下の2つです。

  • target = [ ]
    • : 凡例を表示する図を定義する
  • position = [xUpperRight, yUpperRight]
    • : 凡例ボックスの右上の座標を定義する

ここでは plt0plt1 を図の凡例として出力すると
想定しているので、target = [plt0, plt2] と定義しています。

/dataplot で使用しているプロットデータを基準にして、
position を決定するという意味です。

/auto_text_colorplot 内で color を定義した場合、
その定義された色と同じ色を凡例にも適応するという意味です。

補足ですが、legend() は最後に出力した図に、
凡例を付けるようになっています。

上の例だと plt1/overplot しているので、
plt0 に凡例がつきます。

さて、続いては実際に legend() を使ってみましょう。

legend() の具体例

簡単な例を使って、legend() の使い方を紹介します。
sin 関数を 黒色 blackplt0 として出力し、
cos 関数を 赤色 redplt1 として出力し、
その図に凡例を付けてみたいと思います。

ソースコードを以下に提示しました。
idl を読むのに慣れている人は、以下のソースコードだけ見れば
何をしているのかわかると思います。

plot() で分からない箇所がある方は、idl plot の使い方 をご覧ください。

plt_legend = legend(...) で凡例を付けています。
書き方は、font_namefont_size を指定している箇所が
異なりますが、先ほど legend() の文法 で紹介したものとほとんど同じです。

legend() 関数のより奥深い使い方は (近日公開予定) idl legend の使い方 -応用編- をご覧いただくか、IDL Reference legend() をご覧ください。

おわりに

IDL の基本から応用まで幅広く扱っている日本語の書籍は 2019 年現在で 2-3 冊しかありません。
その中で私のおすすめ書籍は、IDLプログラミング入門―基本概念から3次元グラフィックス作成まで― (KS理工学専門書 です。
基本から応用まで幅広く知ることができるようになります。
IDL の書籍って需要がほとんどないので、その分単価が高くなっていまして、本一冊で約1万円します。笑
個人で買うのは厳しいところがありますので、指導教員の研究費で買うのが良いと思います。

この記事が誰か一人の役にでも立てれば、嬉しい限りです:)

最後までお読みいただき、ありがとうございました。

End of the text

コメント

タイトルとURLをコピーしました