【问题标题】:adding error bar to histogram in gnuplot在gnuplot的直方图中添加误差线
【发布时间】:2012-08-15 01:39:57
【问题描述】:

我有一个看起来像这样的数据文件

#col 1     2     3     4     5     6     7
#bench                 #these are max and min values 
#mark     #bar1 #bar2  #for the prevoius 2 values 
NOSHARE.2 43032 139412 100 45000 130000 140000
FALSE_SHARE.2 7035 24101 5000 7500 24100 25000
SHAREDVAR.2 11316 10248 10000 12000 10000 12000

我可以使用 gnuplot 生成一个图形,看起来像这样

我需要将最大值和最小值作为误差条添加到每个条形

这是我的 gnuplot 脚本

set output "truevsfalse.png"
set title " TRUE VS FALSE SHARING "
set boxwidth 0.9 absolute
set style fill   solid 1.00 border lt -1
set key inside right top vertical Right noreverse noenhanced autotitles nobox
set style histogram clustered gap 5 title  offset character 0, 0, 0
set datafile missing '-'
set style data histograms
set xtics border in scale 0,0 nomirror rotate by -45  offset character 0, 0, 0
set xtics  norangelimit
set ylabel "NUMBER      OF      SHARING"
set xlabel "BENCHMARK"
plot 'truevsfalse.dat'  using 2:xtic(1)  title "true(synced and nonsynced)sharing (both vcpus)" , '' u 3   title "false sharing (both vcpus)"

我试过了

plot 'truevsfalse.dat'  using($0- .05):2:4:5:xtic(1) with boxerrorbars  title "true(synced and nonsynced)sharing (both vcpus)" , '' using ($0+0.25):3:6:7 with boxerrorbars  title "false sharing (both vcpus)"

但是失败了,我要么只得到没有直方图条的误差条,要么尝试修改一点图像损坏。
我在做什么?

谢谢

【问题讨论】:

标签: gnuplot histogram


【解决方案1】:

基本上,您需要叠加直方图和误差线图,但是,我发现问题在于使用xtic(1),这使得在箱线图上叠加误差线图变得困难。

set xtics ('NOSHARE.2' 0, 'FALSE_SHARE.2' 1, 'SHAREDVAR.2' 2)
set bs 0.2 # width of a box
plot 'junk' u ($0-bs/2):2:(bs) w boxes title "true(synced and nonsynced)sharing (both vcpus)", \
     'junk' u ($0-bs/2):2:4:5 w yerror notitle, \
     'junk' u ($0+bs/2):3:(bs) w boxes title "false sharing (both vcpus)", \
     'junk' u ($0+bs/2):3:6:7 w yerror notitle

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-09
    • 2012-08-14
    • 1970-01-01
    • 1970-01-01
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多