Gnuplot集团的日子

时间:2017-09-25 13:02:41

标签: gnuplot

是否可以每天绘制一个条形图,其中日期值包含给定日期中所有值的总和? 如果是,是否可以划分每个"总和"加入其总和成分?

数据

2017-09-25 13:56:51 10
2017-09-25 13:56:53 20
2017-09-25 19:20:53 30
2017-09-26 11:56:53 40
2017-09-26 13:17:02 20
2017-09-27 12:56:53 10
2017-09-28 09:56:54 30
2017-09-28 23:56:54 50

所需的输出

80                                           B
70                                           B
60       C           B                       B
50       C           B                       B
40       C           A                       B
30       B           A                       A
20       B           A                       A
10       A           A           A           A
 0   2017-09-25  2017-09-26  2017-09-27  2017-09-28

所有列的颜色不必相同,只是用于分隔总和组件。

到目前为止,我已设法只绘制每个记录的条形图:

set title "Durations sum per day"
unset multiplot
set xdata time
set style data boxes
set timefmt "%Y-%m-%d %H:%M:%S"
set format x "%m-%d\n%H:%M"
set xlabel "Day"
set ylabel "Duration sum"
set autoscale y
plot "my-data" using 1:3 t "duration [s]" with impulses linewidth 10

1 个答案:

答案 0 :(得分:0)

你只是忽略你的情节的时间,只使用日期

plot dataf us (timecolumn(1,"%Y-%m-%d")):3 smooth freq with imp

在另一种情况下,这应该有效

stats dataf us (timecolumn(1,"%Y-%m-%d"))
set style histogram columnstacked
plot for [i=STATS_min:STATS_max:60*60*24] dataf us (timecolumn(1,"%Y-%m-%d")==i?$3:NaN) w imp lw 10 title strftime("%Y-%m-%d",i)

但不知何故“columnstacked”不适用于“plot for []”