Gnuplot科学绘图是一款超强的便携式命令行驱动图形绘图软件。有兴趣的可以来试试哦。有需要的欢迎来东坡下载使用!
Gnuplot科学绘图简介
gnuplot科学绘图是一款免费的便携式命令行驱动图形绘图软件,它是使用命令行来绘图的,功能包括二维和三维绘图,数量庞大的输出格式,交互式输入或脚本驱动的选项,和一大套脚本实例。虽然名字里包含了GNU,但是它并不是GNU的一个部分。
软件说明
用于Linux,OS/2,微软Windows,OSX,VMS,和许多其他平台。源代码是有版权,但自由发布(即,你不必为它付出)。它最初是为了使科学家和学生数学可视化功能和数据交互,但已发展到支持很多非交互式应用,如Web脚本。它也可以用来作为由像倍频第三方应用绘图引擎。 gnuplot一直支持,并自1986年以来正在积极发展。
功能说明
Gnuplot支持多种类型地块在任何2D和3D。它可以通过绘制线,点,箱,等高线,矢量场,表面和各种相关文字。它也支持各种专业绘图类型。演示这里
Gnuplot支持多种不同类型输出:交互式屏幕终端(鼠标和热键输入),直接输出到笔式绘图仪或现代打印机,并输出到多种文件格式,无花果,JPEG ,乳胶,METAFONT,PBM,PDF,PNG,后记,SVG,...)。 gnuplot很容易扩展到包括新输出方式。最近增加包括基于aquaterm(OSX)交互终端和wxWidgets(多平台)。
安装与使用
1.Linux下的安装
在命令行下输入
#apt-getinstallgnuplot
系统自动获取包信息、处理依赖关系,就可以完成安装
安装完毕后,在命令行下运行:
$gnuplot
就进入了gnuplot
系统出现:
gnuplot>
这个是这个软件的提示符,熟悉shell的同学都晓得这个gnuplot的shell。所有的命令都在这里输入。
2.Windows下的安装
下载,释放到本地硬盘的目录里,假设是c:gnuplot。然后到这个目 录的下查找bin这个目录,在bin目录下有一个名为wgnuplot.exe的文件,双击该文件,就出现了GUI界面的gnuplot。
至此,你已经成功安装了gnuplot,可以开始下面的操作了
新手上路、牛刀小试
既然安装好了gnuplot,那就要来试试看,画个最简单的吧,sin(x)
在提示符下面输入:
gnuplot>plot[-3.14:3.14]sin(x)
然后就可以看到结果了,如图:
上面有横轴有纵轴,还有图例,好像比较小巧的软件还不能有那么全的功能,我知道的就是matlab可以画,可能其他数学软件也可以,不过比起这个小个头的软件..........
如果你不需要上面的图例,你可以在运行:
gnuplot>unsetkey
如果要还原
gnuplot>setkeydefault
然后再运行上面的绘图命令就可以实现没有图例或者恢复图例的效果了
实战
一般情况下使用gnuplot都是科学绘图,因此很多都是放在文章里面。一般优秀的科技文献都是用latex来编写的,所以gnuplot提供了直接输 出 tex文件的功能,只需要把output设置为latex就可以了。下面来看一个例子,就把上面的正弦曲线插入到你的文章中。在命令行下输入:
gnuplot>setterminallatex
setoutput"sin.tex"
plot[-3.14:3.14]sin(x)
那么程序自动生成了一个tex文件,其包含一系列代码,都是绘图用的,可以用写字板打开,里面都是一些指令,你完全可以忽略掉。你可以把这个文件直接插入你的文章中,例如
egin{figure}
egin{center}
input{sin.tex}
end{center}
end{figure}
编译成PDF后的效果如图
以后凡是要生成插入latex的图片,就可以用上面的办法实现。
添油加醋
当然前面的图已经很不错了,就是稍显单调,这里给它加点装饰,来个x轴和y轴的提示、图片是说明。这样才更像一幅论文里面的图片。在命令行下输入以下代码:
gnuplot>setterminallatex
setoutput"sinagain.tex"
setsize5/5.,4/3.
setformatxy"$%g$"
settitle"Thisisaplotof$y=\sin(x)$"
setxlabel"Thisisthe$x$axis"
setylabel"Thisis\the\$y$axis"
plot[0:6.28][0:1]sin(x)
依旧,生成一个tex文件,安装前面讲的方法把它包含进来。然后编译成PDF的效果就是如图了:
这里用到?思父雒睿?
setsize设置图片的大小
setformatxy设置x、y轴文字的格式
settitle设置图片标题
setxlabel设置x轴的文字
锦上添花
一般情况下,科技论文的图片很多都含有好几个图线,那么这里就介绍下如何在一张图里显示多张图片。
先看代码:
gnuplot>setterminallatex
setoutput"combine.tex"
setformatxy"$%g$"
settitle"Combination"
setxlabel"$x$axis"
setylabel"$y$axis"
plot[-3.14:3.14]0.2*xwithpoints,sin(x)withlines
这里没有很特别的地方,只是plot多了一个项目,当要绘制多个图线的时候需要用逗号来分隔,注意这里不是中文的逗号,而是西文的逗号。另外with后面的参数是说用什么线性来绘制。出来的效果看下面的图:
精雕细琢
接下来再对图片进行加工。一般图片x轴每个计数单位都是希望能够控制的,而不是系统自己来决定的,那么可以通过以下的代码来实现。
看代码:
gnuplot>setterminallatex
setoutput"tic.tex"
setformaty"$%g$"
setformatx"$%.2f$"
settitle"Thisis$sin(x)$"
setxlabel"Thisisthe$x$axis"
setylabel"$sin(x)$"
setxtics-pi,pi/4
plot[-pi:pi]sin(x)
把生成的tex文件插入你的latex文件中,就出现了以下的效果:
还是没有大变化,就加了一个setxtics这个是设置x的间距,也就是从-pi开始、每隔pi/4出现一次,pi是gnuplot内建的一个变量,所以只要输入pi,系统知道其含义。
- PC官方版
- 安卓官方手机版
- IOS官方手机版