我之前有question这个。但是当我尝试在不同的数据文件结构中使用相同的解决方案时,该解决方案无效。 这是我的数据文件:
CS 31.73 18.32 20.78 22.88 1.97 1.29 0.90 2.01
FL 43.27 29.45 15.64 6.55 1.64 1.27 2.18 0.00
HB 32.44 20.43 14.89 14.53 5.42 10.92 0.80 0.31
HD 28.53 7.27 29.53 20.33 9.18 0.93 2.04 1.44
MR 22.56 36.19 10.66 15.51 9.45 4.32 0.80 0.31
ZK 27.15 10.81 27.40 16.10 8.05 7.24 1.06 1.71
All 30.00 21.35 18.05 16.82 6.14 5.39 1.11 0.85
我的gnuplot:
set term pos eps font 20
set style data histogram
set style histogram rowstacked
set key invert reverse above
set boxwidth 0.8
set format y "%.0f%%"
set border 3
set yrange [0:100]
set size 0.9 , 1.8
set label 1 "1092" at -0.3,103 font "Times-Roman, 17"
set label 2 "500" at 0.7,103 font "Times-Roman, 17"
set label 3 "1000" at 1.8,103 font "Times-Roman, 17"
set label 4 "500" at 2.8,103 font "Times-Roman, 17"
set label 5 "1000" at 3.8,103 font "Times-Roman, 17"
set label 6 "500" at 4.8,103 font "Times-Roman, 17"
set label 7 "500" at 5.8,103 font "Times-Roman, 17"
set output 'aspect.eps'
plot 'a3b-aspect' \
using($2):xtic(1) t "pattern 1" lc rgb "#006600" lt -1 fs pattern 1, \
'' using($3) t "pattern 2" lc rgb "#006600" lt -1 fs pattern 2, \
'' using($4) t "pattern 3" lc rgb "#330000" lt -1 fs pattern 3, \
'' using($5) t "pattern 4" lc rgb "#000099" lt -1 fs pattern 4, \
'' using($6) t "pattern 5" lc rgb "#000099" lt -1 fs pattern 5, \
'' using($7) t "pattern 6" lc rgb "#000099" lt -1 fs pattern 6, \
'' using($8) t "pattern 7" lc rgb "#000099" lt -1 fs pattern 7, \
'' using($5) t "pattern 3" lc rgb "#660000" lt -1 fs pattern 3, \
'' using($6) t "pattern 3" lc rgb "#990000" lt -1 fs pattern 3
和我的输出:
这里有什么问题,我的所有图表在Y轴和第一个条形图之间都有空格?请给我一些解释。感谢
答案 0 :(得分:4)
另一个问题的解决方案有效,但现在看来你根本不想要任何空间。这是另一回事。
在您的情况下,您可以使用set offset
来减少任何空间。所以只需添加
set offset -0.6,-0.6,0,0
到您的脚本。您还应该使用set ytics out nomirror
删除右侧多余的抽搐。
说明:set offset
从自动计算的范围开始调整范围。对于直方图,第一个栏位于0,第二个栏位于1等。因此,您的案例中的xrange会自动设置为[-1:7]
,并且您的盒子值为0.8。您也可以使用set xrange [-0.4:6.4]
,但使用set offsets
可以更灵活地使用不同数量的小节。
4.6.5的结果: