2017-09-25 1 views
0

Est-il possible de tracer une barre par jour, où la valeur du jour est la somme de toutes les valeurs du jour donné? Et si oui, est-il possible de diviser chaque barre "somme" en ses composantes somme?Groupe Gnuplot par jours

Que les données être

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 

Et la souhaitée sortie

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 

Les couleurs ne doivent pas être les mêmes dans toutes les colonnes, il est juste pour séparer les composants de somme .

Jusqu'à présent, j'ai réussi à tracer seulement les barres, chacun par enregistrement:

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 

Répondre

0

Vous ignorez tout simplement le temps de votre parcelle et utiliser uniquement la date

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

et dans l'autre cas cela devrait fonctionner

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) 

mais en quelque sorte « columnstacked » ne fonctionne pas avec « complot pour [] »

+0

Je me demande toujours si je me suis trompé avec l'option columnstacked ou si c'est un bug .... – Karl