45.1.1 Binary matrix

Gnuplot は、array, record, format, filetype などの general バ イナリ形式を特定するようなキーワードをつけずにオプション binary を使 うことで、matrix バイナリファイルを読み込むことができます。その他の変換 用の general バイナリキーワードは、matrix バイナリファイルにも適用でき るでしょう。(詳細は、以下参照: binary general (p. [*])。)

以前のバージョンでは、gnuplot は動的にバイナリデータかどうかを判断していましたが、現在は、ファイル名の後ろに binary キーワードを直接指定することが必要です。

単精度浮動小数の数値が次のように保存されています:


     <N+1>  <y0>   <y1>   <y2>  ...  <yN>
      <x0> <z0,0> <z0,1> <z0,2> ... <z0,N>
      <x1> <z1,0> <z1,1> <z1,2> ... <z1,N>
       :      :      :      :   ...    :

これらは以下のような 3 つの数字の組に変換されます:


     <x0> <y0> <z0,0>
     <x0> <y1> <z0,1>
     <x0> <y2> <z0,2>
      :    :     :
     <x0> <yN> <z0,N>


     <x1> <y0> <z1,0>
     <x1> <y1> <z1,1>
      :    :     :

そして、これらの 3 つの数字の組は gnuplot の孤立線に変換され、その後 gnuplot が通常の方法で描画の残りを行います。

行列やベクトルの操作のサブルーチン (C による) が binary.c に用意され ています。バイナリデータを書くルーチンは


     int fwrite_matrix(file,m,nrl,nrl,ncl,nch,row_title,column_title)

です。これらのサブルーチンを使う例が bf_test.c として用意されていて、 これはデモファイル demo/binary.dem 用に複数のバイナリファイルを生成 します。

index キーワードは、ファイルフォーマットが 1 つのファイルにつき 1 つ の曲面しか許さないため、サポートされません。everyusing フィルタ はサポートされます。using は、データがあたかも上の 3 つ組の形で読まれ たかのように働きます。

以下参照: binary general (p. [*])。以下も参照。

http://www.gnuplot.info/demo/binary.htmlバイナリファイルの splot のデモ。

竹野茂治@新潟工科大学
2009年4月5日