71.2 Binary

バイナリデータファイル:

以前の gnuplot バージョンでは、バイナリ形式のデータファイルを自動的に検出するものもありましたが、現在はファイル名の後ろに binary のキーワードを与えることが必須となっています。ファイル形式に関する十分詳細な 情報は、ユーザがコマンドラインから与えるか、またはサポートしている filetype のバイナリ形式のファイルそれ自身から抜き出されるかする必要 があります。バイナリファイルには、大きく 2 つの形式、binary matrix 形 式と binary general 形式があります。

binary matrix 形式は、32 ビット IEEE 規格の浮動小数値 (float) が 2 次元配列の形で並び、それらの座標値を表す行と列が追加されています。 ASCII matrix 同様、using リストにおいては、座標用の列の並び (1 列目) が using の 1 番目の要素 (x 座標) に対応し、座標用の行の並び (1 行目) が using の 2 番目の要素 (y 座標) に対応し、配列の各値が using の 3 番 目の要素 (z 座標) に対応します。

binary general 形式は、任意個の列のデータを含み、それらの情報はコマ ンドラインで指定する必要があります。例えば array, record, format, using などでサイズや形式、データの次元を指定できます。他にも、ファイ ルヘッダ読み飛ばしたり、エンディアン (endian) を変更するための有用なコ マンドがありますし、配置、データの変換を行なうコマンドの組があります。 それは、一様に標本化されたデータの場合、その座標がファイルには含まれな いことが良くあるからです。matrix バイナリや ASCII データと違っていると ころですが、general バイナリは 1,2,3 といった using リストで生成され る列番号を使わず、むしろ 1 列目はファイルの 1 列目、あるいは format リストで指定されたもの、になります。

さまざまな binary オプションに対する大域的なデフォルトの設定も可能で、 それは (s)plot < filename> binary ... コマンドに与えるオプションと全 く同じ書式で指定できます。その書式は set datafile binary ... です。 一般的な規則として、デフォルトのパラメータはファイルから抜き出されたパ ラメータで上書きされ、それはコマンドラインで指定された共通なパラメータ で上書きされます。

例えば array, record, format, filetypebinary general 形 式を特定するようなキーワードが何もついていなければ、デフォルトのバイナ リ形式は binary matrix です。

general バイナリデータは、特別なファイル名 '-' を使ってコマンドライン から入力することもできます。しかし、これはキーボードからの入力を意図し たものではなく、パイプを使ってプログラムにバイナリ形式を変換させるため のものです。バイナリデータには最後を表す記号がありませんので、gnuplot はパイプからデータを読み込む場合、array 指定子で指定した数の点数にな るまでデータを読み込み続けます。詳細に関しては、以下参照:binary matrix (83.1.1), binary general (71.2.1)

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

バイナリファイルの splot のデモ。



Subsections
竹野茂治@新潟工科大学
2012年10月3日