一些以前使用的linux及shell命令,gnuplot脚本

tar

bash 复制代码
tar -cvzf xxx.tar.gz *
-c,--create 创建新的tar文件
-v,--verbose 列出每一步处理涉及的文件的信息,只用一个"v"时,仅列出文件名
使用两个"v"时,列出权限、所有者、大小、时间、文件名等信息
-z,--gzip,--gunzip,--ungzip 调用gzip执行压缩或解压缩
-f,--file [主机名:]文件名 指定要处理的文件名
可以用"-"代表标准输出或标准输入
bash 复制代码
tar -xvf xxx.tar.gz
-x,--extract,--get 解开tar文件(???)
-v,--verbose 列出每一步处理涉及的文件的信息,只用一个"v"时,仅列出文件名
使用两个"v"时,列出权限、所有者、大小、时间、文件名等信息
-f,--file [主机名:]文件名 指定要处理的文件名
可以用"-"代表标准输出或标准输入

scp

bash 复制代码
scp -rp 用户名@IP:
bash 复制代码
ulimit -s unlimited
bash 复制代码
ulimit -l unlimited

gnuplot

bash 复制代码
set term postscript enhanced color solid
set output 'xxx.eps'
#图注在图中的位置: set key left/right top/bottom/center
set key top left
#图注增加/取消外框: set/unset key box
#图注间距: set key spacing 1.5
#图注位于图外: set key lmargin(left)/rmargin(right)/tmargin(top)/bmargin(below)
#取消图注: unset key
#关于文本文件的名字
#set nokey()
#设置给定坐标轴范围;也可以设置负向坐标: set xrange/yrange [100:1]
set xr [0:100]
#或者只设置一端坐标(另一端将自动调整):set xrange/yrange [:100]
#恢复自动坐标轴范围(此时人工给定设置依然保留):set auto x/y
#恢复给定坐标轴范围:set noauto x/y
set xlabel "xxx" font "Italicss-Roman,20"
set ylabel "xxx" font "Italicss-Roman,20"
set label "GA88:T=0.71" font "Times-Roman,16" at 0.2,10
set xtics nomirror
set ytics nomirror
#将每个大间隔平分为2份
set mxtics 2
set mytics 2
set bmargin 4
#Y轴取值范围
set yr [0:25]
#设置图片/字体大小:set size 0.6,0.6 字体大小设置比较复杂,
#此命令是按比例缩放图片大小,字体大小不变,相当于字体相对变大
set size square
#u 1:2(用哪几列数据做图)
#lp(画点会用上的)
#lt 1 (线类型)
#pt 7 (点类型)
#lw 2(线宽)
plot"FE15" u 1:2 w lp lt 1 pt 7 lw 2, \
"FE16" u 1:2 w lp lt 2 pt 7 lw 2, \
"FE17" u 1:2 w lp lt 3 pt 7 lw 2

#f(x) =a*x+b
#g(x) =c*x+d(做函数图像会用到的)
#fit f(x) "T_N_kth0"  using (log($1)):2 via a,  b
#fit g(x) "T_N_kth10" using (log($1)):2 via c,  d
#plot"T_N_kth0"  u (log($1)):2 w p pt 7, \
#"T_N_kth10" u (log($1)):2 w p pt 7, \
#f(x) w l lt 2 lw 2, \
#g(x) w l lt 2 lw 2

画轨迹会用到的脚本:

bash 复制代码
.........
#"-1"代表颜色;"x1y2"代表右方的y坐标轴
plot "traj0" u ($1/1000000):9 w l lt -1  axis x1y2 t "Q", \
"traj0" u ($1/1000000):10 w l lt 1 lw 2 axis x1y1 t "zcm"
plot "traj1" u ($1/1000000):9 w l lt -1  axis x1y2 t "Q", \

二维自由能图:

bash 复制代码
.........
#"b"代表底部;"s"曲面;"t"顶部
set pm3d at b
set pm3d corners2color c1
#等位线标识;等高线高程标志;给等高线加标注
#This command sets the label for the color box axis.
set clabel
set pm3d map
.........
#色板对应的取值范围是 cbrange(Color Box range)
set cbrange [0:18]
#定义调色板
set palette defined (0 "black", 6 "red", 12 "yellow",18 "white")

splot"F2D9" u 1:2:3 notitle
set out

gnuplot中的一些技巧:

一、基础篇:

1、plot命令

可以在gnuplot中输入help plot查看帮助,子选项中比较常用的with,可以在gnuplot中输入help plot with查看帮助

bash 复制代码
gnuplot> plot sin(x) with line linetype 3 linewidth 2 或
gnuplot> plot sin(x) w l lt 3 lw 2    %用线画,线的类型(包括颜色与虚线的类型)是3,线的宽度是2,对函数sin(x)作图
gnuplot> plot sin(x) with point pointtype 3 pointsize 2  或
gnuplot> plot sin(x) w p pt 3 ps 2    %用点画,点的类型(包括颜色与点的类型)是3,点的大小是2
gnuplot> plot sin(x) title 'f(x)' w lp lt 3 lw 2 pt 3 ps 2    %同时用点和线画,这里title 'f(x)'表示图例上标'f(x)',如果不用则用默认选项
gnuplot> plot sin(x)    %此时所有选项均用默认值。如果缺某一项则将用默认值
gnuplot> plot 'a.dat' u 2:3  w l lt 3 lw 2 %利用数据文件a.dat中的第二和第三列作图

顺便提一下,如这里最前面的两个例子所示,在gnuplot中,如果某两个词,按字母先后顺序,前面某几个字母相同,后面的不同,那么只要写到第一个不同的字母就可以了。如with,由于没有其它以w开头的词,因此可以用 w 代替,line也可以用 l 代替。

2、同时画多条曲线

bash 复制代码
gnuplot> plot sin(x) title 'sin(x)' w l lt 1 lw 2, cos(x) title 'cos(x)'  w l lt 2 lw 2  %两条曲线是用逗号隔开的。画多条曲线时,各曲线间均用逗号隔开就可以了。

以上例子中是对函数作图,如果对数据文件作图,将函数名称换为数据文件名即可,但要用单引号引起来。

3、关于图例的位置, 默认位置在右上方。

bash 复制代码
gnuplot> set key left  %放在左边,有left 和right两个选项
gnuplot> set key bottom  %放在下边,只有这一个选项;默认在上边
gnuplot> set key outside  %放在外边,但只能在右面的外边
#以上三个选项可以进行组合。如:
gnuplot> set key left bottom  %表示左下边
#还可以直接用坐标精确表示图例的位置,如
gnuplot> set key 0.5,0.6  %将图例放在0.5,0.6的位置处
#如果要取消图例可以用unset key 命令

4、关于坐标轴

bash 复制代码
gnuplot> set xlabel 'x'   %x轴标为'x'
gnuplot> set ylabel 'y'   %y轴标为'y'
gnuplot> set ylabel 'DOS' tc lt 3  %其中的tc lt 3表示'DOS'的颜色用第三种颜色。//(?)
gnuplot> set xtics 1.0    %x轴的主刻度的宽度为1.0,同样可以为y轴定义ytics
gnuplot> set mxtics 3    %x轴上每个主刻度中画3个分刻度,同样可以为y轴定义mytics
gnuplot> set border 3 lt 3 lw 2 %设为第三种边界,颜色类型为3,线宽为2
#同样可以为上边的x轴(称为x2)和右边y(称为y2)轴进行设置,即x2tics,mx2tics,y2tics,my2tics。
gnuplot> set xtics nomirror
gnuplot> unset x2tics     %以上两条命令去掉上边x2轴的刻度
gnuplot> set ytics nomirror
gnuplot> unset y2tics     %以上两条命令去掉右边y轴的刻度

5、在图中插入文字

bash 复制代码
gnuplot> set label 'sin(x)' at 0.5,0.5  %在坐标(0.5,0.5)处加入字符串'sin(x)'。
#在输出为.ps或.eps文件时,如果在set term 的语句中加入了enhanced选现,则可以插入上下标、希腊字母和特殊符号。
#上下标的插入和latex中的方法是一样的。
#如果要在图中每个点上都添加标签,可以
gnuplot>plot 'file.dat' using 1:2:3 with labels %其中1,2列分别表示横坐标和总坐标值,第三列作为标签添加到每个点上,当然第三列必须时双引号扩起来的字符串,比如
1,2,"1"
3,4,"2"
....
如果第三列是数字,可以用stringcolumn(3)转换
gnuplot>plot 'file.dat' using 1:2:(stringcolumn(3)) with labels
#若既想把点画出来,又想在点上添加标签,目前我的做法时分别画,因为with后面labels和<type>不能兼容,这个没有Matlab好,即
gnuplot>plot 'file.dat' using 1:2 with points ps 3,plot 'file.dat' using 1:2:3 with labels

6、在图中添加直线和箭头

bash 复制代码
gnuplot> set arrow from 0.0,0.0 to 0.6,0.8    %从(0.0,0.0)到(0.6,0.8)画一个箭头
gnuplot> set arrow from 0.0,0.0 to 0.6,0.8 lt 3 lw 2   %这个箭头颜色类型为3,线宽类型为2
gnuplot> set arrow from 0.0,0.0 to 0.6,0.8 nohead lt 3 lw 2  %利用nohead可以去掉箭头的头部,这就是添加直线的方法。
#注意,在gnuplot中,对于插入多个的label和arrow等等,系统会默认按先后顺序分别对各个label或arrow进行编号,从1开始。
#如果以后要去掉某个label或arrow,那么只要用unset命令将相应的去掉即可。如:
gnuplot> unset arrow 2
#将去掉第二个箭头。

7、图的大小和位置

bash 复制代码
gnuplot>set size 0.5,0.5  %长宽均为默认宽度的一半,建议用这个取值,尤其是画成ps或eps图形的时候
gnuplot>set origin 0.0,0.5   %设定图的最左下角的那一点在图形面板中的位置。这里图将出现在左上角。

8、画三维图

bash 复制代码
gnuplot>splot '文件名' u 2:4:5  %以第二和第四列作为x和y坐标,第五列为z坐标。

9.将图形输出到文件

bash 复制代码
#在gnuplot中,输出文件的格式是由terminal来控制的。
#默认的情况下,都是输出到屏幕,即终端模式为X11。
#如果想输出到文件,则必须对terminal进行设置。
#要了解有那些终端类型,可以输入 set terminal后回车,所有支持的终端模式(或文件格式)都列出来了。
#就我来说,输出文件的格式用得最多的是ps和eps文件。这在运行画图命令
#plot或splot前必须先运行如下两条命令:
gnuplot>set term post eps color solid enh
gnuplot>set output 'a.eps'
#其中第一条命令为设置终端模式,post即为postscript模式,这是输出到ps或eps文件必须有的。
#后面的eps,color,solid以及enh选项均可以有或没有,根据你的需要。
#eps表示输出为eps文件,没有就输出为ps文件;
#color表示输出图形为彩色,不用就会保存为黑白的;
#solid表示输出图中的所有线都用实线,不用则除了第一条线为实线外,其它的均用不同的虚线;
#使用enh(enhanced)选项可以在图中插入上下标、希腊字母和特殊符号,不用则不能实现这些功能。
#后面的选项可以根据自己的需要选择一个或几个。
#第二条命令对output的设置表示要输出的文件的名字。
#但是请注意,运行完这条命令后,还仅仅是定义了输出文件的名字,实际上,图还没画到这个文件里去。
#因此运行这两条命令还只是进行了必须的设置。然后运行如下命令
gnuplot>plot sin(x) w l
#或
gnuplot>replot #(假如前面已经运行过plot或replot命令的话)
#这时,图形就在上面指定的文件中了。
#要输出为其它格式,同样要进行这样的设置,比如要输出为jpg格式,则在运行画图命令前先运行如下命令:
gnuplot>set term jpeg
gnuplot>set output 'a.jpg'
#如果要由其它模式再返回到输出到屏幕,则运行如下命令:
gnuplot>set term X11

二、提高篇:

1、如何在同一张图里同时画多个图

bash 复制代码
gnuplot>set multiplot   %设置为多图模式
gnuplot>set origin 0.0,0.5   %设置第一个图的原点的位置
gnuplot>set size 0.5,0.5  %设置第一个图的大小
gnuplot>plot "a1.dat"
gnuplot>set origin 0.5,0.5   %设置第二个图的原点的位置
gnuplot>set size 0.5,0.5   %设置第二个图的大小
gnuplot>plot "a2.dat"
gnuplot>set origin 0.0,0.0   %设置第三个图的原点的位置
gnuplot>set size 0.5,0.5  %设置第三个图的大小
gnuplot>plot "a3.dat"
gnuplot>set origin 0.5,0.0   %设置第四个图的原点的位置
gnuplot>set size 0.5,0.5  %设置第四个图的大小
gnuplot>plot "a4.dat"
#当然,如果后一个图中的某个量的设置和前一个的相同,那么后一个中的这个量的设置可以省略。
#例如上面对第二、第三和第四个图的大小的设置。
#前一个图中对某个量的设置也会在后一个图中起作用。如果要取消在后面图中的作用,必须用如下命令,如取消label,用
gnuplot>unset label

2、作二维图时,如何使两边坐标轴的单位长度等长

bash 复制代码
gnuplot> set size square    %使图形是方的
gnuplot> set size 0.5,0.5    %使图形是你要的大小
gnuplot> set xrange[-a:a]
gnuplot> set yrange[-a:a]    %两坐标轴刻度范围一样
gnuplot> plot 'a.dat'

3、如何在同一张图里利用左右两边的y轴分别画图

bash 复制代码
gnuplot> set xtics nomirror   %去掉上面坐标轴x2的刻度
gnuplot> set ytics nomirror   %去掉右边坐标轴y2的刻度
gnuplot> set x2tics       %让上面坐标轴x2刻度自动产生
gnuplot> set y2tics     %让右边坐标轴y2的刻度自动产生
gnuplot> plot sin(x),cos(x) axes x1y2    %cos(x)用x1y2坐标,axes x1y2表示用x1y2坐标轴
gnuplot> plot sin(x),cos(x) axes x2y2     %cos(x)用x2y2坐标,axes x2y2表示用x2y2坐标轴
gnuplot> set x2range[-20:20]   %设定x2坐标的范围
gnuplot> replot
gnuplot> set xrange[-5:5]  %设定x坐标的范围
gnuplot> replot
gnuplot> set xlabel 'x'
gnuplot> set x2label 't'
gnuplot> set ylabel 'y'
gnuplot> set y2label 's'
gnuplot> replot
gnuplot> set title 'The figure'
gnuplot> replot
gnuplot> set x2label 't' textcolor lt 3    %textcolor lt 3或tc lt 3设置坐标轴名称的颜色

4、如何插入希腊字母和特殊符号

bash 复制代码
#一般只能在ps和eps图中,且必须指定enhanced选项。在X11终端(即显示器)中无法显示。
gnuplot> set terminal postscript enhanced然后希腊字母就可以通过{/Symbol a}输入。例如
gnuplot> set label '{/Symbol a}'
#各种希腊字母与特殊符号的输入方法请见安装包中gnuplot-4.0.0/docs/psdoc目录下的ps_guide.ps文件。
#另外还可参见:http://t16web.lanl.gov/Kawano/gnuplot/label-e.html#4.3

5、gnuplot中如何插入Angstrom(埃)这个符号(A上面一个小圆圈)

bash 复制代码
#脚本中在插入前先加入
gnuplot>set encoding iso_8859_1
#这个命令,然后就可以通过"{\305}"加入了。如横坐标要标上"k(1/?)":
gnuplot>set xlabel 'k(1/{\305})'
#如果是multiplot模式,则这个命令必须放在
gnuplot>set multiplot的前面。
#如果后面还要插入别的转义字符,那么还要在插入字符后加入如下命令:
set encoding default
#安装包中gnuplot-4.0.0/docs/psdoc/ps_guide.ps文件中的表中的'E'代表那一列的所有符号都用这个方法输入。

6、gnuplot画等高线图

bash 复制代码
gnuplot>splot  '文件名.dat'  u 1:2:3  w  l   %做三维图
gnuplot>set dgrid3d 100,100 %设置三维图表面的网格的数目
gnuplot>replot
gnuplot>set contour    %设置画等高线
gnuplot>set cntrparam  levels  incremental -0.2,0.01,0.2   %设置等高线的疏密和范围,数据从   -0.2到0.2中间每隔0.01画一条线
gnuplot>unset surface   去掉上面的三维图形
#最后用鼠标拽动图形,选择合理的角度即可。或者直接设置(0,0)的视角也可以:
gnuplot>set view 0,0
gnuplot>replot
#这里注意,画三维图的数据文件必须是分块的,也就是x每变换一个值,y在其变化范围内变化一周,这样作为一块,然后再取一个x值,y再变化一周,作为下一数据块,等等。块与块之间用一空行格开。

7、如何画漂亮的pm3d图

bash 复制代码
gnuplot> set pm3d                %设置pm3d模式
gnuplot> set isosamples 50,50       %设置网格点
gnuplot> splot x**2+y**2          %画三维图
gnuplot> splot x**2+y**2 w pm3d   %画成pm3d模式,注意比较变化
gnuplot> set view 0,0              %设置视角,(0,0)将投影到底面上去
gnuplot> splot x**2+y**2 w pm3d   %重画,注意看变化
gnuplot> unset ztics               %把z轴上的数字给去掉
gnuplot> set isosamples 200,200     %使网格变细
gnuplot> replot                   %重画,注意看变化,主要是过渡更光滑

8、利用脚本文件避免重复输入(?)

bash 复制代码
#有时候对某个数据文件做好一张图后,下次可能还要利用这个数据文件作图,但某个或某些设置要作些细微变化。
#这时候,可以把第一次作图时的命令全部写到一个文件里,如a.plt,下次只要将相应的设置做修改后,用下面的命令就会自动运行文件所有的命令而最后得到你要的图:
gnuplot>load 'a.plt'
#作为一个例子,假设文件名为a.plt,里面的内容为:
set pm3d 
set view 0,0 
unset ztics 
set isosamples 200,200 
splot x**2+y**2 w pm3d
set term post color
set output 'a.ps'
replot
#那么启动gnuplot后,只要运行如下命令就可以了:
gnuplot>load 'a.plt'
#如果我们要得到的仅仅是.ps或.eps图,那也可以在linux命令提示符下直接运行如下命令:
[bill@bill~]$gnuplot a.plt

9、在gnuplot模式下运行linux命令

bash 复制代码
#在gnuplot提示符下也可以运行linux命令,但必须在相应的命令前面加上 ! 号。
#例如,假设很多参量都已经设置好了,但需要对某个数据文件a.dat进行修改后再画图,则可以用如下方式
gnuplot>!vi a.dat
#通过这种方式,所有的linux命令都可以在gnuplot环境里运行。
#另外,也可以在gnuplot的提示符后输入shell,暂时性退出gnuplot,进入linux环境,做完要做的事情后,运行exit命令,又回到gnuplot环境下。
gnuplot>shell
[bill@bill~]$vi a.f
[bill@bill~]$f77 a.f
[bill@bill~]$a.out    #(假设生成a.dat数据文件)
[bill@bill~]$exit
gnuplot>plot 'a.dat' w l 

一、Gnuplot的下载及安装

1.官方网站下载软件包,自行安装 http://www.gnuplot.info/index.html。

Gnuplot的官方网站虽做得比较简单,但其提供了各种操作系统下的软件版本,而且官方网站还提供了各种教程、使用经验、论坛等内容的链接,在下载软件的同时我们还可以得到许多使用的帮助,所以推荐大家到官方网站上下载Gnuplot,顺便浏览下官方网站的各个板块。

2.Fedora 下在线安装

bash 复制代码
yum install gnuplot 

或者使用Fedora 的软件安装与卸载工具搜索Gnuplot ,下载、安装Gnuplot。

3.Ubuntu 下在线安装

bash 复制代码
apt-get install gnuplot

或者使用Ubuntu 的软件中心搜索Gnuplot ,下载、安装Gnuplot。

4.Windows 下安装时只需从官方网站上下载win32的zip压缩包,将其解压缩,释放到本地硬盘的某个目录里即可。

二、Gnuplot 的运行

1.Linux 下只需打开终端,输入gnuplot 即可,此时终端中会显示程序的版本等一些信息,并进入Gnuplot的命令模式。

2.Windows 下要找到解压目录的下bin这个目录,在bin目录下有一个名为wgnuplot.exe的文件,双击该文件,就会出现GUI界面的gnuplot。

三、Gnuplot 使用的简单介绍

1.绘制简单的函数

bash 复制代码
#Gnuplot的基本运算符有:+ - * / 等,x**4表示x4。 
 >plot sin(2*x) 
#即可绘制出简单的正弦函数曲线,程序自动设定坐标范围。你也可以自己设定坐标范围: 
 >set xrange [-pi:pi] 
#当然,我们可以在绘图的时候直接设定坐标的范围:
>plot [-pi:pi] sin(x) 
#你也可以绘制简单的三位函数图。比如绘制z(x,y)=x2+y : 
>splot x**2+y 
#如需设定坐标范围,则输入: 
>splot [-10:10] [-20:20] x**2+y
#设置坐标轴为对数坐标:
>set logscale x

2.命名图像与坐标轴

bash 复制代码
   >set title "示例" 
   >set xlabel "x 轴" 
   >set ylable "y 轴" 
   #以上几条命令将图像的标题命名为"示例",x轴命名为"x 轴",y轴命名为"y 轴"。 

3.改变坐标轴的标识,显示网格

bash 复制代码
   >clear 
   >plot [-pi:pi] sin(x) 
   >set xtics ("-180" -pi,"-90" -pi/2,"0" 0,"90" pi/2,"180" pi) 
   >set grid 
   #以上几条命令首先将图形窗口清空,然后绘制sin(x)函数,改变坐标轴的标识,只显示五个角度值,最后显示网格。

4.设置图例的位置

bash 复制代码
   >plot sin(x) title "sine" with linepoints pointtype 5 
   >plot sox(x) t "cosine" w boxes lt 4 
   >set key left
   >set key bottom
   >set key outside
   #上面的第一条语句绘制一幅正弦曲线,
   #图例的名称为"sine",线型为linepionts(点画线),点的类型为pionttype(点),图形的颜色为5(红色);
   #第二条语句使用了简写的方法。Gnuplot默认将图例放在右上角的边框内,后面的几条命令,将其位置进行变动。
   #关于线型、点类型、颜色、线宽等的具体设置请参考Gnuplot的使用指南。 

5.在同一幅图中的同一区域绘制多条曲线

bash 复制代码
   >plot sin(x) title "sin(x)" w l lt 1,cos(x) title "cos(x)" w l lt 2
   上面的命令将在同一图中的同一坐标系中绘制sin(x)(线型为直线,颜色为红色)和cos(x)(线型为直线,颜色为绿色)。 

6.在同一幅图中的不同区域绘制多幅图

bash 复制代码
    *设定坐标范围   
    >set xrange [-pi:pi]
    *将屏幕或图像文件的边框比例设为1
    >set size 1,1
    >set origin 0,0
    *程序进入多图绘制模式
    >set multiplot
    *设置第一幅图占整幅图的1/4,并设置其原点为整幅图的0,0.5处,绘制sin(x)函数
    >set size 0.5,0.5
    >set origin 0,0.5
    >plot sin(x)
    设置第二幅图战整幅图1/4,并设置其原点为整幅图的原点,绘制1/sin(x)函数
    >set size 0.5,0.5
    >set origin 0,0
    >plot 1/sin(x)
    *设置第一幅图占整幅图的1/4,并设置其原点为整幅图的0.5,0.5处,绘制cos(x)函数
    >set size 0.5,0.5
    >set origin 0.5,0.5
    >plot cos(x)
    *设置第一幅图占整幅图的1/4,并设置其原点为整幅图的0.5,0处,绘制1/cos(x)函数
    >set size 0.5,0.5
    >set origin 0.5,0
    >plot 1/cos(x)
    *还原为单幅图绘制模式
    >unset multiplot
    *还原所有的设置
    >reset

7.绘制数据图

bash 复制代码
#Gnuplot绘制数据图与Matlab有很大不同,它不许要用户定义变量,把数据挨个输入,而是以读取数据文件的形式,将数据绘制成图。具体步骤如下:
#(1)在当前文件夹建立一个文本文档,命名为example(可以为任意后缀名,如txt、inp等),将数据粘贴进去。注意x轴,y轴,或z轴的数据分别写为一列,每一列之间以空格或逗号隔开(我喜欢用Tab)。
1    5     10    10
2    10    20    30
3    15    30    50
4    20    40    70
5    25    50    90
    #以第一列为x轴,第二列为y轴,绘制二维数据图
    >plot "example.inp" using 1:2
    #以第一列为x轴,第二列为y轴,第三列为z轴,绘制三维数据图
    >splot "example.inp" using 1:2:3
   #以第一列为x轴,第二列、第三列、第四列的平均值为y轴,最小值为第二列,最大值为第四列
   #(using修饰符中指定为x:y:ylow:yhigh),with函数yerrorbars)
    plot "example" 1:(2+3+$4)/3:2:4 title "example" with yerrorbars

8.数据拟合

bash 复制代码
    #Gnuplot也提供了数据强大的拟合功能,这里以简单的一次函数和二次函数为例说明。
    #以一次函数来拟合第一列和第二列数据,得到拟合参数a,b,及误差
    >fit a*x+b "example" via a,b
    #以a,b,为参数绘制直线,同时将example中的数据点画出
    >plot 5*x-2.20316e-13,"example"
    #以二次函数来拟合
    >fit a*x**2+b*x+c "example' via a,b,c
    >plot 1.65386e-13*x**2+5*x+1.30488e-12,"example"

9.输出图像文件

bash 复制代码
    Gnuplot支持输出为常见的图片或文档文件类型,包括pdf、jpeg、png、gif等等,具体可以通过>set terminal来查询。
    >set term jpeg
    >set output "example.jpg"
    >replot
#此时便在当前文件夹产生一个名为"example.jpg"的图片。

参考来源:

1.http://www.osedu.net/yuanchuang-article/ns2/2011-07-30/282.html

2.http://randle.wordpress.com/2007/06/12/gnuplot-induction/

3.http://dsec.pku.edu.cn/dsectest/dsec_cn/gnuplot/index.html

4.http://www.duke.edu/~hpgavin/gnuplot.html

相关推荐
绵绵细雨中的乡音26 分钟前
网络基础知识
linux·网络
Peter·Pan爱编程1 小时前
Docker在Linux中安装与使用教程
linux·docker·eureka
kunge20132 小时前
Ubuntu22.04 安装virtualbox7.1
linux·virtualbox
清溪5492 小时前
DVWA中级
linux
Sadsvit2 小时前
源码编译安装LAMP架构并部署WordPress(CentOS 7)
linux·运维·服务器·架构·centos
xiaok2 小时前
为什么 lsof 显示多个 nginx 都在 “使用 443”?
linux
苦学编程的谢3 小时前
Linux
linux·运维·服务器
G_H_S_3_3 小时前
【网络运维】Linux 文本处理利器:sed 命令
linux·运维·网络·操作文本
Linux运维技术栈3 小时前
多系统 Node.js 环境自动化部署脚本:从 Ubuntu 到 CentOS,再到版本自由定制
linux·ubuntu·centos·node.js·自动化
拾心214 小时前
【运维进阶】Linux 正则表达式
linux·运维·正则表达式