全部博文(2759)
分类:
2012-05-16 12:49:03
原文地址:gnuplot 处理多列数据 (转载) 作者:zzggbb
Syntax:
plot {[ranges]}
{[function] | {"[datafile]"
{datafile-modifiers}}}
{axes [axes] } { [title-spec] } {with [style] }
{, {definitions,} [function] ...}
gnuplot> plot "data.txt" using 1:2plot 一个数据文件。 例子文件 a.txt 的内容的一部分。
1 611738 581056 593414 583590 502984 553813
2 661569 548566 556251 503663 461451 507295
3 723006 558036 518351 461444 429248 464006
4 748299 579828 510268 432925 403245 444233
5 770639 630340 558121 428781 409407 447517
6 773501 663703 580150 430565 414668 454168
7 773358 680100 602547 429561 415999 459455
8 772250 693620 616986 424956 416455 461635
9 767792 714011 642304 419132 413608 464747
10 760577 729287 666633 410204 416556 464428
...
gnuplot> plot [0:100] [0:800000] "a.txt" using 1:2using 1:2 表示用第一列表示 x 坐标,用第二列表示 y 坐标。
可以指明 x 坐标的范围是 0 到 100 , y 坐标的范围是 0 到 800000 。下面的办法一样可以实现相同的功能。
gnuplot> set xrange [0:100]可以用 title 来指明一个曲线的名字。
gnuplot> plot "a.txt" using 1:2 title "sample curve" ;可以用
gnuplot> plot "a.txt" using 1:2 with lines # 用线条画图下面的例子可以同时显示两条曲线,分别用点和线的方式。
gnuplot> plot sin(x) with lines title 'Sine Function', \下面的例子可以用不同的颜色显示线。
gnuplot> plot sin(x) with lines linetype 1下面的例子说明如何指定线条的宽度。gnuplot> plot sin(x) with lines linewidth 6类似可以用 pointtype 和 pointsize 指定点的颜色和大小。可以用 test 命令查看所有支持的 linetype, linewidth, pointtype, pointsize。
也可以用下面的办法指定 line 和 point 的样子。
gnuplot> plot "a.txt" using 1:2 with linespoints linestyle 1可以用下面的命令处理边框 。
gnuplot> unset border # 没有边框
gnuplot> set border 1 linetype 2 # 下面的边框用 linetype 2
gnuplot> replot
gnuplot> set border 2 linetype 3 # 左面的边框用 linetype 3
gnuplot> replot
gnuplot> set border 3 linetype 3 # 下面和左面的边框用 line type 3border 后面的数字是一个12个bit 的整数,每一位bit 表示一个边框。于是 1 ,2, 4, 8 分别对应下,左,上,右边框。
可以用 set grid 来控制背景栅格。查看帮助 help set grid
gnuplot> set grid可以用 set key 来控制曲线名称的摆放位置。查看帮助 help set key
gnuplot> plot sin(x) title "Sine X"可以用下面的办法增加一个标记。查看帮助 help set arrow , help set label
gnuplot> set label 1 "Peak" at -5,0.8 right可以用下面的办法给图增加一个标题。查看帮助 help set title
gnuplot> set title "My Figure 1"可以用下面的办法控制坐标的刻度的表示。查看帮助 help set xtics
gnuplot> set xtics ("left" -5, "middle" 0, "right" 5);用下面的办法可以查看一个数据文件中第二列和第三列的和的处理后数据。
gnuplot> plot "a.txt" using 1:($2+$3), "a.txt" using 1:2,"a.txt" using 1:3可以用下面的办法,把绘图输出到 jpeg 格式的。
$echo "set terminal jpeg small ; plot sin(x)" | gnuplot > a.jpg可以 plot 用一些外部命令处理后的数据
gnuplot> plot "< awk '{print $1,$2+$3,$2}' < a.txt" using 1:2