使用 Gnuplot 在栏的顶部添加标签

Adding labels on top of bar using Gnuplot

我正在尝试在直方图的条形顶部添加值。我意识到有很多答案可用,并且我尝试了一些,例如下面这个 gnuplot histogram: How to put values on top of bars。 但是,结果没有任何值。谁能指导我阅读这篇文章。

clear
reset
unset key

$Data <<EOD
Case Case1 Case2 Case3
Value1  33.22   71.62   76.11
Value2  29.82   34.08   28.41
EOD
set style data histogram
set style fill solid border
set style histogram clustered
plot for [COL=2:4] $Data with boxes fill pattern 1, '' u 1:( + 0.5):() with labels
set key
set yrange [0:100]
set term png
set output "histogram_demo.png"
replot

这里有几个问题

  • 你需要告诉程序 $Data 的第一行是文本列标题
  • 你不能告诉它绘图风格是 histograms 然后用 boxes
  • 绘图
  • 从不使用迭代变量COL;它应该在 using 说明符
  • 您必须调整标签的 x 位置以匹配直方图布局。

例如

$Data <<EOD
Case Case1 Case2 Case3
Value1  33.22   71.62   76.11
Value2  29.82   34.08   28.41
EOD
set key autotitle columnhead
set style data histogram
set style fill solid border
set style histogram clustered
plot for [COL=2:4] $Data using COL fill pattern 1, \
     for [COL=2:4] '' u ([=10=] + COL*0.2 - 0.6):COL:COL with labels offset 0,1