我的数据文件看起来像这样
#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
I am able to generate a graph using gnuplot which looks like this
![enter image description here](https://i.stack.imgur.com/ZqW96.png)
我需要将最大值和最小值作为误差条添加到每个条形
这是我的 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)"
但失败了,我要么只得到没有直方图条的误差条,要么如果我尝试修改一点图像就会损坏。
我究竟做错了什么?
Thanks
基本上,您需要叠加直方图和误差条图,但是,我发现问题在于使用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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)