「gnuplot」の版間の差分

提供: MacWiki
移動: 案内検索
((3/4)* readline-6.2 のインストール)
行71: 行71:
  
 
  $ cd readline-6.2/
 
  $ cd readline-6.2/
  $ patch -p0 < ../readline62-001.webarchive.txt
+
  $ patch -p0 < ../readline62-001
 
  patching file vi_mode.c
 
  patching file vi_mode.c
 
  patching file callback.c
 
  patching file callback.c
  $ patch -p0 < ../readline62-002.txt
+
  $ patch -p0 < ../readline62-002
 
  patching file support/shobj-conf
 
  patching file support/shobj-conf
 
  patching file patchlevel
 
  patching file patchlevel

2012年1月3日 (火) 00:39時点における版

Gnuplot とは?

正しくは gnuplot(にゅーぷろっと)と呼びます。 Thomas Williams 氏、Colin Kelley 氏らによって開発されているフリーのグラフ作成プログラムで、 2D・3Dの関数や数値データをグラフ化することができます。 名前に gnu とついていますが、GNU プロジェクトとは関係ありません。 詳しくは Wikipedia:Gnuplot を参照して下さい。

参考サイト

インストール

OS X に gnuplot をインストールするには次のような方法があります。

  • 1) MacPortsEasyPackage、Fink、MacOSX_WorkShop といったバイナリパッケージ集を利用する(参考:リスト/UNIXパッケージ)。
    • Fink安定板のgnuplotには、タブ補完機能(readline)やコマンド履歴機能が含まれていません。
  • 2) 単独配布パッケージを使う。
    • http://www.muskmelon.jp/macosx/
    • Intel Mac 専用。Tiger/Leopard 対応。
    • アプリケーションフォルダ(/Applications)に gnuplot.app を設置してインストール。
    • set terminal pdf で PDF ファイルに直に出力できる
    • パスの補完が効く
  • 3) gnuplot 公式ページで配布されている Mac OS X 用バイナリを利用する
    • http://sourceforge.net/projects/gnuplot/files/gnuplot/ の Gnuplot-4.0.0.dmg
    • タブ補完機能(readline)やコマンド履歴の保存機能は含まれていないようです。また、4.0.0 以降のバージョンでは dmg ファイルは作成されていません。
  • 4) 下の手順 (1/4)〜(4/4) を参考にして、ソースから gnuplot 最新版をインストールする。

ソースからのインストール方法

(1/4) 必要なファイルを入手する

以下のファイルはオプションです。

(2/4)* aquaterm-1.0.1 のインストール

Leopardでは、この手順はスキップしても OS 標準添付の X11 に グラフを出力することができます。 ただ、グラフを印刷したりする場合は、AquaTerm の方が格段に便利です。

AquaTerm.pkg をダブルクリックするだけで、インストールできます。

(3/4)* readline-6.2 のインストール

この手順はスキップしても大丈夫です。

cd readline-6.2
./configure
make
sudo make install
  • Tiger にも readline(libreadline.dylib)が含まれていますが、この実体は libedit で 2001 年以来更新されていません(NetBSD はどうしているのでしょう?)。普通に make すると以下のようになってビルドに失敗しますので、上記の GNU readline を必ずインストールするようにして下さい。
/usr/bin/ld: Undefined symbols:
_rl_forced_update_display
_history_list
_replace_history_entry
_rl_ding
_rl_complete_with_tilde_expansion
  • Lion では readline62-002 パッチ を当てる必要があります。
$ cd readline-6.2/
$ patch -p0 < ../readline62-001
patching file vi_mode.c
patching file callback.c
$ patch -p0 < ../readline62-002
patching file support/shobj-conf
patching file patchlevel

(4/4) gnuplot-4.4.2 のインストール

$ cd gnuplot-4.4.2
$ ./configure --with-readline=builtin --enable-history-file
$ make
$ sudo make install

補足:上記のように --enable-history-file オプションを付けると、コマンド履歴が ~/.gnuplot_history に保存されるようになります。

デフォルトでは、Emacs 用の gnuplot-mode(lisp ファイル)が /usr/local にインストールされます。これが不要な場合は、次のオプションを追加するとよいでしょう。

--without-lisp-files

手順 (3/4) の readline-6.2 をインストールしている場合は --with-readline=builtin の代わりに --with-readline=gnu を使うと良いでしょう。

$ ./configure --with-readline=gnu --enable-history-file
$ make
$ sudo make install

64 bit バイナリをビルトするには、例えば、以下のようにします。この例は、/usr/local に 64bit の readline が入っていることを想定しています。 (こういう小細工なしでデフォルトで 64 bit バイナリになっているかもしれません)

$ ./configure CFLAGS="-m64" CPPFLAGS="-m64" LDFLAGS="-m64" \
  --with-readline=gnu --enable-history-file --without-lisp-files
$ make
$ sudo make install

開発版

開発版(CVS 版 gnuplot 4.5.0)の機能更新は gnuplot メモ(竹野さん@新潟工科大学) が詳しいです。

インストールするには上記インストール手順 (4/4) の代わりに次のようにします。

cvs -d:pserver:anonymous@gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot login
cvs -z3 -d:pserver:anonymous@gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot co -P gnuplot
cd gnuplot
./prepare
./configure --with-readline=builtin --enable-history-file
make
sudo make install

注意 prepare コマンドはバージョン 2.58 以降の autoconf を要求しますが、 configure.in の 8 行目を AC_PREREQ(2.57) と書き換えれば Mac OS X 10.3.6 でも OK でした。

グラフの出力先

AquaTerm

set terminal aqua

とすると、出力が AquaTerm になります。 また、環境変数GNUTERMを指定すると、デフォルトの出力が AquaTerm になります。 bashでは、次のようなコマンドをエイリアス登録すればよいでしょう。

$ GNUTERM=aqua /usr/local/bin/gnuplot

ホームディレクトリに .gnuplot という名前のテキストファイルを用意し、

set terminal aqua

と書いておく方法もあります。

X Window System

出力先をx11にすると、グラフを表示しているウィンドウ上でマウス・キーボード操作によって出力範囲の指定や、3次元の視点変更などが可能になります。また、複数のウィンドウに出力できます。

set terminal x11 {<n>} 
                      {title "<string>"} 
                      {{no}enhanced} 
                      {font <fontspec>} 
                      {{no}persist} {{no}raise} {solid|dashed} {{no}ctrlq} 
                      {close} 
set terminal x11 {reset} 

PostScript プリンター

set terminal postscript color
set output "| lpr -Pprintername"

のようにして、PostScriptプリンターに直接グラフを出力することができます。

Terminal の画面

set terminal dumb

とすると、ターミナルのテキスト画面にグラフを出力することができます。 このとき、グラフは ASCII アートで表示されます。

例)

   1e+06 ++--A-AAAA-+----------+-----------+----------+----------+---------++
         +  A      AAAA A      +           +       "data.dat" us 1:2   A    +
         + A             AAAA                                               +
  100000 ++                  AAA                                           ++
         +                      A A                                         +
         +                         AAA                                      +
   10000 ++                           AAA                                  ++
         +                               A A                                +
         +                                  AA                              +
    1000 ++                                   AA                           ++
         |                                      A                           |
     100 ++                                      A                         ++
         +                                                                  +
         +                                        AA AAA                    +
      10 ++                                             A                  ++
         +                                               A A                +
         +                                                                  +
       1 ++                                                 A              ++
         +                                                A                 +
         +          +          +           +          +          +          +
     0.1 ++---------+----------+-----------+----------+----------+---------++
         0          5          10          15         20         25         30

gnuplot>


他、未整理の情報

gnuplot-mode

PostScript

gnuplotが生成する eps ファイルは癖があるみたいで、 Illustrator や Preview.app で開くとレイアウトが崩れます。 RedHat Linux 7 に付属していた epstopdf という Perl スクリプトを使うと、 レイアウトの乱れがないPDFファイルに変換できました。-- ぜ

GUI ラッパー

Cueplot


関連書籍

Wiki内の関連ページ