本文大部分摘录于瞬间集博客:http://blog.sciencenet.cn/u/yusufma gnuplot内含一个非常有用的帮助系统。 只要在gnuplot里输入:gnuplot> help set xtics 就能得到完整的 set xtics 用法及实例。 好了,下面我们讲数据绘图。首先介绍我们的数据文件。这是一个关于北京市一年中每月平均降水量的数据,我们的数据以纯文本方式储存在文件名为 datafile.dat 的文件中,文件全文如下: ### 文件开始 ### # 北京月平均降水量 (mm) # # 月份 降水量 # ============== 1 2.5 2 5.1 3 10.2 4 25.4 5 27.9 6 71.1 7 175.3 8 182.9 9 48.3 10 17.8 11 5.1 12 2.5 ### 文件结束 ### 数据分为两列,第一列为月份,第二列为降水量。以 # 符号开始的各行为注释,也就是说,这些行对绘图不构成任何影响。下面开始画图。 gnuplot> set xlabel "月份" gnuplot> set ylabel "降水量(毫米)" gnuplot> set title "北京市月平均降水量" gnuplot> unset key gnuplot> set xrange [0.5:12.5] gnuplot> set xtics 1,1,12 gnuplot> plot "datafile.dat" 这里我们看到,默认的数据作图是画出各数据点。如果我们希望得到数据连线呢?可以使用下面的命令: gnuplot> plot "datafile.dat" with lines with 命令后面跟的是画图方式,这里使用的是 lines 方式,也就是把各个数据用直线连接起来。gnuplot大约支持三十种画图方式,默认为 points 方式,我们以后会选择一些常用的方式来介绍。 现在问题来了:如何既得到连线,又得到数据点呢?对了,用 with linespoints: gnuplot> plot "datafile.dat" with linespoints gnuplot里面有几个控制点和线画法风格的参数:
gnuplot> plot "datafile.dat" with linespoints linecolor 3 linewidth 2 pointtype 7 pointsize 2 这几个参数的用法不难理解,直接跟在 with 命令之后就可以了,但是2、3、7这些数字都代表什么意思呢?这些数字是代表不同画法风格的代码,具体某个数字代表什么意思,这个依赖于我们使用的 terminal(还记得我们在第二讲里曾经讲过的 terminal 吗?)拿我们现在正在使用的 wxt terminal 举例,如果想知道这些数字究竟代表什么意思,可以输入命令: gnuplot> test 这样当前 terminal 会输出一个测试图: 测试图中包含当前 terminal 的风格代码实例。例如,左下角显示的是连线粗细,右边显示的是色彩和数据点显示风格对应代码。 最后,告诉大家一个好消息:gnuplot里面很多命令有缩写形式。例如上面例子中的绘图命令可以简写为: gnuplot> plot "datafile.dat" w lp lc 3 lw 2 pt 7 ps 2 至于其他参数命令的缩写形式,相信不难猜出来,大家可以试验一下猜猜看。 实验中经常碰到的情况是,我们要同时处理多组数据。 例子: gnuplot> plot "precipitation.dat" using 1:2 w lp pt 5, "precipitation.dat" using 1:3 w lp pt 7这里我们用了一个新的命令:using。在我们的数据文件包含超过一组数据时,我们可以用 using 指定使用哪列数据。例如 using 1:2 表示使用第一列和第二列数据,第一列为横轴,第二列为纵轴。以此类推,using 1:3 表示使用第一列和第三列数据。如果想把多组数据绘制到一个图上,只要使用一个 plot 命令,后面跟多组数据,每组数据之间用逗号隔开就可以了。 |
|
来自: icewater1234 > 《gnuplot》