
GNUplot
おそらく、これは最初に私たちに見せることができる最も単純なものです(おそらく、WordまたはExcelの例外を除きます)。 gluplotを使用したデータ処理は非常に簡単で、プログラミングの特別な知識を必要とせず、言語はアルゴリズムに近いです。 グラフィカルデータ処理の作業を開始するのに最適です。
使い方
データを含むファイルがあるとします-あるパラメーターの測定値を含む1つの列。 このファイルをdata.datと呼びます。 データが正規分布であることを知っています。それはねじのバッチの質量分布です。 私たちのタスクは、ネジの質量の平均値を決定することです。 私の解決策は、データからヒストグラムをプロットし、それを曲線で近似することです 。 以下は、そのような構造のコードの例です。
bin_width=0.1 set boxwidth 0.9*bin_width absolute bin_num(x)=floor(x/bin_width) rounded(x)=bin_width*(bin_number(x)+0.5) plot 'data.dat' using (rounded($1)):(1) smooth frequency with boxes set table 'table.dat' replot # , unset table f(x)=a*exp(-(xc)**2/b) a=6# "" b=0.01 c=2 fit f(x) 'table.dat' using 1:2 via a, b, c plot f(x), 'data.dat' using (rounded($1)):(1) smooth frequency with boxes
近似では、a、b、およびcの値はかなり良い精度で決定されます。 この問題では、パラメータcが測定対象の質量の平均値であると簡単に推測できます。 したがって、単純なコードといくつかの考慮事項を使用して、収集したデータをすばやく分析できます。
GNUplotの使用に関する私の結論
大量のデータ(実験室の仕事の枠組みで大きい)を高速でグラフィカルに処理する必要がある場合、GNUplotは理想的です。 それにもかかわらず、バグが発生する場合があり、その性質を考慮する必要があります。 統計調査などの基本的な作業の初心者には、このツールを使用することをお勧めします。
ラブビュー
このモンスターは、実際のラボ所有者向けに設計されています! 実験室の仕事をシミュレートするための純粋に視覚的なプラットフォーム。 それ自体がComPortsからデータを収集して処理し、動的なグラフを作成します。 機会-たくさん。 ほとんどのエンジニアは、Labview専用に働いています。 しかし! それを理解するには多くの努力が必要です。

LabVIEWでの作業に関する私の結論
間違いなく初心者向けではありません! 必要に応じて、数日座ってそれを把握することができます。その後、センサー付きマイクロコントローラーを使用できる実験室作業の処理時間(私の場合はあらゆる種類の振り子を備えた実験室でした)が大幅に短縮されます。

Python
この言語は物理学者にとって素晴らしい発見です。 ほとんどの場合、微分方程式の数値解法など、計算物理学の問題を解決するために使用します。 guplotと同様に、この言語はグラフィカルデータ処理に適していますが、バグが少なく、構文が単純です(guplotについて文句は言いませんが)。 個人的には、私はPythonが好きですが、それぞれが独自のものを持っています。
Pythonでの作業の
import numpy as np import matplotlib.pyplot as plt def f(x, y, t): lag = 0 for j in range(len(y)): n = 1 dn = 1 for i in range(len(x)): # if i == j:# n = n * 1 dn = dn * 1 else: n = n * (t - x[i]) dn = dn * (x[j] - x[i]) lag = lag + y[j] * n / dn return lag xk = np.linspace(-1, 1, 11) yk = 1/(1+xk**2) xnew = np.linspace(-1, 1, 200) ynew = [f(xk, yk, i) for i in xnew] plt.title(u' ') plt.xlabel(u'x') plt.ylabel(u'y') plt.plot(xk, yk, '.', xnew, ynew) plt.grid() plt.show()
Pythonの使用に関する私の結論
私にとって、Pythonは優先事項です。 GNUplotよりもはるかに多くの機能は、理解するのにそれほど労力を必要としません。 もちろん、Labviewの使用ははるかに専門的ですが、習得するのが面倒なので、かなりの時間を必要とするため、Pythonの魅力をすべて学ぶことを好みます。
結論の代わりに
この短いレビューでは、データ処理ソフトウェアを使用した経験を共有することにしました。 彼があなたの研究活動を手助けしてくれることを願っています。
頑張って!