web-dev-qa-db-ja.com

CSVファイルを使用したプロット

すべての行に5つのエントリがあるcsvファイルがあります。すべてのエントリは、ネットワークパケットがトリガーされるかどうかです。すべての行の最後のエントリは、パケットのサイズです。すべての行=経過時間(ミリ秒)。

例えば行

1 , 0 , 1 , 2 , 117

たとえば、グラフをプロットするにはどうすればよいですか?ここで、x軸は行番号であり、yは例えばすべての行の最初のエントリ?

54
user494461

これで開始できます。

set datafile separator ","
plot 'infile' using 0:1
76
Thor

Gnuplot(無料)を使用してpngファイルにプロットすることもできます:

端末コマンド

gnuplot> set title '<title>'
gnuplot> set ylabel '<yLabel>'
gnuplot> set xlabel '<xLabel>'
gnuplot> set grid
gnuplot> set term png
gnuplot> set output '<Output file name>.png'
gnuplot> plot '<fromfile.csv>'

注:set outputで正しい拡張子(ここでは.png)を常に指定する必要があります

また、データが継続されないため、出力が行ではない可能性もあります。これを修正するには、単に「プロット」行を次のように変更します。

plot '<Fromfile.csv>' with line lt -1 lw 2

より多くの行編集オプション(ダッシュと線の色など): http://gnuplot.sourceforge.net/demo_canvas/dashcolor.html

  • gnuplotは、ほとんどのLinuxディストリビューションでパッケージマネージャーを介して利用できます(たとえば、aptベースのディストリビューションで、apt-get install gnuplotを実行)
  • gnuplotはCygwinを介してWindowsで利用可能です
  • gnuplotは、macOSで homebrew を使用して利用できます(brew install gnuplotを実行)
16
Oli4