差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

Both sides previous revision Previous revision
Next revision
Previous revision
gnuplot [2010/03/04 15:05]
isakari
gnuplot [2012/09/02 12:04] (現在)
saito
ライン 1: ライン 1:
 +====== test ======
 +pngへoutput
 +
 +{{:​test.png?​300|}}
 +
 +epsへoutput
 +
 +{{::​testeps.jpg?​300|}}
 +
 +svgへoutput
 +
 +{{::​testsvg.jpg?​300|}}
 +
 +====== inkscapeへの吐き出し ======
 +<​code>​
 +set terminal svg
 +set output '​hoge.svg'​
 +</​code>​
 +でプロットをして吐き出せば,svg形式のファイルが出力される.
 +ただ,出力されたファイルはsvgのタグが閉じられていない.
 +そのため,最後の行に</​svg>​という文を挿入する必要あり.
 +<code /bash>
 +echo "</​svg>"​ >> hoge.svg
 +</​code>​
 +
 +デフォルトのまま出力すると文字が小さいので、
 +<​code>​
 +set terminal svg fsize 15
 +</​code>​
 +などとするとよい。デフォルトのfsizeはだいたい12くらいのようだ。
 +
 +====== inkscapeから吐き出すと凡例が動かせない?======
 +矢印を二番目のやつ(ノードでパスを編集)にして、凡例の端っこ2点をshiftを押しながらクリック。
 +両端が青色になったら矢印キーあるいはctrlを押しながらマウスで動かせます。
 +http://​www.iim.ics.tut.ac.jp/​~yamawaki/​inkscape/​gnuplot.htmlが分かりやすい。
 +
 ====== 関数を定義 ====== ====== 関数を定義 ======
 gnuplot内で関数を定義することができる。例えば(0次)第一種球ハンケル関数をプロットしたければ、 gnuplot内で関数を定義することができる。例えば(0次)第一種球ハンケル関数をプロットしたければ、
ライン 4: ライン 40:
 gnuplot> zbesh0real(x)=-cos(x)/​x gnuplot> zbesh0real(x)=-cos(x)/​x
 gnuplot> zbesh0imag(x)=sin(x)/​x gnuplot> zbesh0imag(x)=sin(x)/​x
-gnuplot> zbesh0real(x),​zbesh0imag(x)+gnuplot> ​plot zbesh0real(x),​zbesh0imag(x)
 </​code>​ </​code>​
-などとやれば良い。よく使う関数は保存しておきた所だが、保存する方法はよく分からない。 +などとやれば良い。よく使う関数はそのまま~/​.gnuplotに書いておけば良 
-<​code ​gnuplot+<​code>​ 
-save "​sph_besh.plt"​+zbesh0real(x)=-cos(x)/​x 
 +zbesh0imag(x)=sin(x)/​x
 </​code>​ </​code>​
-などとやっておくのがよいのだろうか。FIXME 
  
 ====== 2種類の軸を書く ====== ====== 2種類の軸を書く ======
ライン 20: ライン 56:
 gnuplot> plot "​data1.res"​ axes x1y1, "​dat2.res"​ axes x1y2 gnuplot> plot "​data1.res"​ axes x1y1, "​dat2.res"​ axes x1y2
 </​code>​ </​code>​
-この例だと、左側に[-0.9:​1.1]、右側に[0:​1]の目盛が現れる。+この例だと、左側に[-0.9:​1.1]、右側に[0:​1]の目盛が現れる 
 + 
 + 
 +====== 2つのファイルの差分を表示する ====== 
 +直接波と反射波が入ったデータから、直接波のデータを引く場合など。 
 +プログラムを作らなくともgnuplotで差を書き出すことができます。 
 + 
 +sampleA.dat、sampleB.datの1列目は同じもの、2列目を比べたい場合 
 +<code gnuplot>​ 
 +gnuplot> plot "< paste sampleA.dat sampleB.dat"​ using 1:($2-$4) with lines 
 +</​code>​ 
 +などと書きます。 
 + 
 +シェルコマンド"​paste"​を使うことで、sampleA.datとsampleB.datを一つのファイルと見なし、 
 +その1列目をx軸、2列目、4列目(もともとsampleB.datの2列目だったもの)の差をy軸に表示させています
gnuplot.1267682729.txt.gz · 最終更新: 2010/03/04 15:05 by isakari
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0