Chapter 4

Gnuplot

Subsections of Gnuplot

How to insert formulas like latex

gnuplotでlatex形式の数式を挿入

準備

gnuplot では直接pdfをつくらずLaTeX(TikZ)を経由することで美しいグラフのpdfをつくることができる。

このグラフ作成にはtikz環境を使用し、これにより作成されたtexファイルを読み込みタイプセットすることが可能である。

ただしこの環境と関連するファイルはTeXLiveには含まれておらず、Linux等の環境ではGnuplotのインストール時にpackageマネージャーがスタイルファイル gnuplot-lua-tikzとそれに関連するファイルをLaTeXが探索するファイルにインストールしてくれるが、Windowsでは自分で環境を整える必要がある。

  1. ターミナル(コマンドプロンプト)でc/texlive/texmx-local/tex/latexに移動し、gnuplotファイルを作成する。
  2. gnuplotを起動してtexlive/texmx-local/tex/latex/gnuplotに移動し、以下のコマンドを実行する。 set terminal tikz createstyle
  3. コマンドプロンプト上でgnuplotファイルに移動し、mktexlsrを実行してls-IRを更新する。

TeXソースコードの生成

次のように入力し、出力をtilzにしてプロットする。

set terminal tikz
set output "filename.tex"
plot sin(x)

TeXで画像を出力

次のようにTeXファイルに記入することでfilename.texの画像を出力することができる。

\documentclass[dvipdfmx]{jarticle}
\usepackage{tikz}
\usepackage{gnuplot-lua-tikz}
\begin{document}
  \input{filename.tex}
\end{document}

【参考文献】

Command file

gnuplotのコマンドをファイルで保存する方法

  • 拡張子は.plt
  • コメントは#を使う
  • コマンドを順に入力していけばOK!(コマンドの頭に特殊な文字を入れる必要はない)

コマンドファイルの拡張子を.plt以外にした場合

下記のコマンドを打ち込む

> load "コマンドファイル名.拡張子"

参考文献

basic operation

基本コマンド

関数の表示

>plot x*x+2

カレントディレクトリの移動

>cd 'C:\Users'

※ディレクトリやファイル名は’’ ’ ’ ‘‘で囲む

データファイルの表示

>plot 'test.dat'

※ファイル名は絶対パスまたは相対パスでOK ※ファイルデータのここの列はスペースで区切る

データファイルのフィッティング

f(x)=ax**2+bx+c
fit f(x) "data.d" u 1:2 via a,b,c

【出力結果】

...

Final set of parameters            Asymptotic Standard Error
=======================            ==========================

a               = 0.995618         +/- 0.005679     (0.5704%)
b               = 15.3268          +/- 0.051        (0.3327%)
c               = 0.970465         +/- 0.04439      (4.574%)

...
>

Final set of parameterが最終的なフィッティングの結果を表す。Asymptotic Standard Errorは何だろ?

便利なオプション

>plot "ファイル名" [オプション]
オプション 意味
with lines 点と点を線で結ぶ
using 1:2 データの1列目をx軸、2列めをy軸にとってプロットする
with points pointtype 2 (pointtypeptと略してもOK!) 点の種類を2に変える ※【参考】「gnuplotのグラフを調整するには」
with lines linetype 3 (linetypeltと略してもOK!) 線の種類を3に変える
with lp lt 3 lw 2 pt 5 ps 2 線の種類(lt)を3番目のもの,線の太さ(lw)を2に,点の種類(pt)を5番目のもの,点の大きさ(ps)を2にする。 (lp=linespoints,lt=linetype,lw=linewidth,pt=pointtype,ps=pointsize)
title “データのラベル” プロットするデータの名前(凡例)を指定する※【参考】「凡例、ラベル等」
unset key (またはnotitle) データの名前(凡例)を消す

グラフの調整

>set [オプション]
オプション 意味
xtics 1 x軸の目盛間隔を設定
title “タイトル” グラフのタイトルを設定
xlabel “ラベル” x軸の軸ラベルを設定
mxtics [数] x軸の副目盛の数を設定 ※[数]は省略可。標準では1個の主目盛を10等分するように設定されている。
label at first 1.0,1.0 “コメント” x軸、y軸上の指定の位置(ここでは(1.0,1.0))に文字を書く ※詳しくはグラフに文字を書く参照
arrow from 1.0,0.0 to 1.0,4.0 nohead (1.0, 0.0)から(1.0, 4.0)まで線を引く(データラベルはなし)

参考文献

How to install gnuplot

gnuplotのインストール方法

$ sudo apt update
$ sudo apt install gnuplot
$ sudo apt install gnuplot-x11

gnuplot-x11をインストールすると、出力端末が"X11"になる。

出力端末は以下の3つのパッケージが使用可能。ただしこれらは 排他的なパッケージのため、どれか1つのみしかインストールできない。 (他のをインストールしようとすると、すでにインストールされていた パッケージはアンインストールされる。)

  • gnuplot-qt
  • gnuplot-x11
  • gnuplot-nox

参考