我有一个数据文件,我正在创建一个直方图。
数据文件是:
-0.1 0 0 JANE
1 1 1 BILL
2 2 1 BILL
1 3 1 BILL
6 4 0 JANE
35 5 0 JANE
9 6 1 BILL
4 7 1 BILL
24 8 1 BILL
28 9 1 BILL
9 10 0 JANE
16 11 1 BILL
4 12 0 JANE
45 13 1 BILL
我的gnuplot脚本是:
file='test.txt'
binwidth=10
bin(x,width)=width*floor(x/width)
set boxwidth 1
plot file using (bin($1,binwidth)):(1.0) smooth freq with boxes, \
file using (1+(bin($2,binwidth))):(1.0) smooth freq with boxes
我想在y中的logscale上绘制这些数据。但是,set logscale y
无法处理某些值(因为某些箱是空的)。我收到错误Warning: empty y range [1:1], adjusting to [0.99:1.01]
。
根据gnuplot的帮助,“频率选项使数据在x中单调;具有相同x值的点被具有相加的y值的单个点替换。”
如何获取由smooth freq with boxes
计算的总和y值的log10()?