Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6318428
  • 博文数量: 2759
  • 博客积分: 1021
  • 博客等级: 中士
  • 技术积分: 4091
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-11 14:14
文章分类

全部博文(2759)

文章存档

2019年(1)

2017年(84)

2016年(196)

2015年(204)

2014年(636)

2013年(1176)

2012年(463)

分类:

2012-05-15 11:35:45

原文地址:gnuplot画柱状图 作者:jiaweiqq123

 
介绍一个画柱状图的例子如下:

一个例子:
#下面这行设置标题
set title "A demonstration of boxes in mono with style fill pattern"

#下面这一行是用来描述图的每根柱子代表的意义的那个框框的属性。在本例中就是各种search
#其中right top表示位置显示。 Left 表示框子里的字左对齐。 width X用来限定框子大小。
#box X用来表示选用哪种类型的框子--颜色可能不同。 这里在png图里,如果width是0的画,会显得box
#很大,但是,没有关系,如果把它改成jpg格式的话,box正好合适。
set key right top Left reverse width 0 box 3

#下面这两行用来表示x,y轴的意思。引号内的内容会显示在图的轴旁边。
#其中,右边的两个数字表示引号内的内容在图中与x,y轴之间的相对距离。
#第一个0代表水平方向。第二个代表垂直方向。
set xlabel "Number of queries(Hundred)" 0,0
set ylabel "Number of messages" 0,0

#下面一行是用来设置‘柱子’的宽度
set boxwidth 0.9 absolute

#下面两行分别代表不同的画柱子风格。第一种是用颜色去区分。第二种是用斜线来区分柱子。
#第二种打印的话比较好。
#set style fill solid 1.00 border -1
set style fill pattern 3 border -1

set style histogram clustered gap 1 title offset character 0, 0, 0
set datafile missing '-'
set style data histograms
#set xtics border in scale 1,0.5 nomirror rotate by -45 offset character 0, 0, 0
#以下是设置x,y轴的坐标
set xtics   ("5" 0, "10" 1, "15" 2, "20" 3, "25" 4, "30" 5, "35" 6, "40" 7, "45" 8, "50" 9)
set yrange [0 : 25] noreverse nowriteback
#set size 0.7,0.6

set terminal windows
#下面这行语句就是指示柱状图中的每一条的数据是来自'16newmsgsdata(trace).txt'文件的哪一列.
#eg:u 3 ti col title "Cluster Search" 就是表示title为Cluster Search的'柱子'的数据来自data
#文件的第三列.
plot '16newmsgsdata(trace).txt' using 2:xtic(1) ti col title "Recommend Search", '' u 3 ti

col title "Cluster Search", '' u 4 ti col title "Simple Search"
set terminal png
set output "16newmsgs(trace).png"
replot

**************************************************************************
数据文件如下:
#Number of queries(Hundred)
#Number of messages
Axis    Recommend   Cluster           Simple
5        18.95             19.9487515    20.0672495
10      17.53             19.916748      20.227685
15      15.27             19.580625      20.0324985
20      13.51             19.3010005    19.977125
25      3.06               5.5678747      20.2019375
30      0                    0                     20.0405605      
35      0                   0                     20.0024375
40      0                    0                     20.4801885
45      0                    0                     20.1574375
50      0                    0                     19.584875

****************************************************************************
输出文件:命令: load "xxx.txt" 回车
如果是利用set style fill solid 1.00 border -1模式画图,则输出如下:


如果是利用set style fill pattern 3 border -1模式画图,则输出如下:

Ok,大功告成,大家基本可以不用修改什么,如果要改可以试一试就可以。我个人比较推荐第二种模式画柱状图,因为黑白打印时,用颜色只能靠深浅,但是斜线就不一样了。

阅读(2052) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~