我试图用Y logscale绘制直方图。这是我的代码:
input_file = "io_time.dat"
output_file = "io_time.eps"
set terminal postscript eps size 4.0,3.5 enhanced color font "Helvetica,18" solid
set output output_file
set style data histogram
set style histogram cluster errorbars gap 1
set boxwidth 0.8
set logscale y
set ylabel 'I/O Duration (sec)'
set xtics mirror rotate by 45 right
plot input_file u 2:3:4:xtic(1) notitle fs pattern 1 lt 1
我收到以下错误:
"io_time.gp", line 11: label has y coord of 0; must be above 0 for log scale!
虽然它似乎与数据文件的内容无关,但是这个数据文件(io_time.dat)包含4列:第一列用于每个盒子的标签,第二列用于盒子的高度(所有值> 0),第3和第4列包含ylow和yhigh值(也> 0)。
我在Mac OS X 10.7.5上使用通过MacPort安装的gnuplot 4.6 patchlevel 5。
知道如何解决这个问题吗?
编辑:经过调查,我的$ HOME / .gnuplot配置文件中的一行似乎导致了问题:
set label textcolor rgb text_color font my_font
text_color和my_font的定义如下:
text_color = "#000000"
my_font = "Helvetica, 18"
这里还有一个示例数据文件:
A 50.79841091632843 36.28489899635315 69.23793005943298
B 0.11200199127197266 0.032312870025634766 0.42415809631347656
C 0.10992197990417481 0.0323939323425293 0.41459178924560547
D 0.10762600898742676 0.03207087516784668 0.39806699752807617
E 0.03831331729888916 0.03720998764038086 0.04118704795837402
F 0.043952775001525876 0.04250597953796387 0.04720902442932129
G 0.03883504867553711 0.03631401062011719 0.04176783561706543
答案 0 :(得分:1)
所以你基本上已经找到问题的根源了:你设置了一个标签而没有给出明确的坐标,在这种情况下使用了0,0
。而这并不适用于对数尺度。由于标签仅在您plot
时放置,因此会报告plot
命令的行号。
BTW:为什么在配置文件中设置一个空标签?