データファイルを読み込んでグラフにプロットしてくれるソフトgnuplotの紹介
ども、BobbyQuineです。友人宅にて徹夜なうなのですがそこで大学課題で使えそうなgnuplotというものを教わったので備忘録がてら紹介しときます。まぁ実際やってったことを紹介してったほうがわかりやすいと思うので(ry
この記事にかかれていることを実践する場合は自己責任で。
gnuplotのインストール
今回も今までどおりArch Linuxでのものになります。多分他のディストリビューションでも標準のパッケージ管理システムに入っていると思うので。
使い方
まず、プロットするデータが必要です。このgnupoltで読み込むデータは以下のように
1 1
2 2
10 10
x座標<スペース>y座標 というものを改行で連ねたデータになっている必要があります。そこで例えば下のC言語で書かれたプログラムのようにデータを用意します。
以下ソースコード sin.c --------------------------------------------------------------------------------------------
#include <stdio.h>
#include <math.h>
int main(void){
double a;
FILE* fp;
fp=fopen("sin","w");
for(a=0;a<2*M_PI;a=a+0.0001){
fprintf(fp,"%lf %lf\n", a, sin(a));
}
fclose(fp);
return(0);
}
以上ソースコード----------------------------------------------------------------------------------------------------
でまぁこいつの場合 " sin " って名前のファイルができるわけです。次に
$ gnuplot
で起動すると " gnuplot > " となって入力が待機されるわけです。そこに
gnuplot > plot "sin"
とすると正弦波に沿うように点がプロットされます。また、
gnuplot > plot "sin" with lines
とするとその点同士が線で結ばれていくわけです。で出力結果は以下のようになります
そしてここで先程のプログラムを少々改変して余弦波のデータを " cos " というファイル名で保存していて、以下のようにすると同じ盤面にグラフが追加されます。
gnuplot > replot "cos" with lines
gnuplot > quit
でgnuplotを終了できます。と、まぁこんな感じのものの紹介でした。バーイ!!