GNUPLOTのメモ(csvからのオーディオ帯域の周波数特性グラフ表示) for Windows
備忘録的なものだが GNUPLOTでcsvからグラフを描く際の最低限のチュートリアルとして上げておく。
尚、数式からグラフを描く方法はGNUPLOTの中では重要な機能と思うが、このページの目的からは外れているので割愛している。
テンプレート等ダウンロード
GP_template2.zip
グラフテンプレート:gnu_fres_template.plt
csvサンプル1:data1.csv
csvサンプル2:data2.csv
(1)GNUPLOT をインストールする。
GNUPLOT
インストール中「追加タスクの選択」画面にて「実行ファイルのディレクトリをPATH環境変数に追加する」にチェックを入れるのがお勧め。
PATHが通じていないとVSCODEのGNUPLOT用拡張機能を使うときなどに不都合が出る可能性がある、多分。

(2)グラフ表示するファイルをcsvで用意する。
このページ冒頭のサンプルデータを使うときは用意不要、一応テキストエディタでcsvの中身を確認のこと。
■ GNUPLOTで使うためのcsvファイルの作り方(標準的かどうかは不明)
CSVの区切りは , カンマ
※ GNUPLOTのデフォルトの区切り文字はスペースだが、csvを読み込むところで設定できるので、汎用性を考慮してカンマとする。
数値データ部分(下記の仮ルールでは1行目以外)は数値以外のものを入れないこと ※数値を表す文字 1e+3 等はOK、dB 等はNG
csvファイル名は日本語可
複数のcsvファイルを使う際、ファイルごとにX軸の刻み幅や範囲が違っても問題無くひとつのグラフに描画可能
行と列の仮ルール ※行と列のルールに関しては必定では無く、GNUPLOTで設定も可能
1列目はX軸にする 「周波数」
2列目以降はY軸にする 「データ」を必要なだけ並べる
1行目は「項目名」にする、"Freq" ”SPU” "Port" "SPU+Port" 等。日本語不可。
データの汎用性を考慮すると、項目名はアルファベット26文字+数字+(一部の記号) 程度が無難(スペースも区切り文字に使われることがある)。
これはテキストエディタ画面だが、内容によってはエクセル等で編集した方が楽

(3)pltファイルを書き、実行・修正 する
起動したGNUPLOTに Windowsのコマンドプロンプト のような感じでコマンドを一行一行打ち込んでグラフを描かせる方法もあるが
実務で使う際は pltファイルに一連の処理を書いて実行させる、pltファイルを微修正して使い回す、方が効率的と思われる。
csvのデータを使って周波数特性のグラフ表示させるpltファイルは
グラフ用紙を描く部分
csvを読み込んで用意したグラフ用紙にプロットする部分
が必要になる。
流用可能なpltファイルがあれば
「グラフ用紙を描く部分」のX,Y軸のレンジ
「csvを読み込んで用意したグラフ用紙にプロットする部分」 のファイル指定
を微修正する程度で最低限の表示は可能。
わからないコマンドはネットで容易に見つけられるし、起動したGNUPLOTに help xrange などと打ち込むと日本語の解説が出る。
オーディオ帯域の周波数特性表示に流用可能なpltファイル として gnu_fres_template.plt を添付する。
csvファイルの場所(PATH)は書き換えないと使えないので注意!!
pltファイルの実行は、pltファイルを、マウスのドラッグ&ドロップで エクスプローラー等から GNUPLOTのウインドウ上に落とす のが簡単。
gnu_fres_template.plt を VSCODE で編集している画面(Gnuplot Preview インストール済の画面)
* 20251122追記 ↓ 綴りミスあり Responce → Response 、ダウンロード用の "GP_template2.zip" の中のテンプレートファイルは修正済

gnu_fres_template.plt をGNUPLOTにドロップするとグラフウインドウが出る

(おまけ)これは必須では無い
フリーのテキストエディタ Visual Studio Code (VSCODE)に 拡張機能 "Gnuplot Preview" があるので
インストールして
pltファイルを編集しているVSCODE上で右クリック → コマンドパレット → gnuplot.view と打つ
と、VSCODE内にGNUPLOTのグラフが小さく現れ、以降はpltファイルを修正すると即座にグラフに適用される。
VSCODE画面、Gnuplot Preview にてプレビュー時

homeに戻る
┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨ Copyright (c) 店長 , 転載禁止 ┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨┣¨