Bonsoir,
J'essaye de mettre en oeuvre l'idée (excellente) qui m'a été suggérée
d'utiliser gnuplot pour générer des graphes de températures depuis des
données d'une base MySQL, et j'aurais besoin de vos lumière concernant
l'affichage de l'axe du temps.
Le temps est stocké sous la forme 20060905190434 dans ma base ; j'utilise
donc l'option 'set timefmt %Y%m%d%H%M%S' pour lire cette donnée dans
gnuplot. Pour l'affichage, j'utilise l'option 'set format x week %W' dans
le cas où je veux afficher le numéro de la semaine sur un intervale total
d'un mois.
Ensuite, je limite la grille sur les semaines, via l'option 'set xtics
604800' (nombre de secondes dans une semaine). Jusque là, ça va.
Le petit soucis, c'est que je n'arrive ni à faire tomber la grille sur le
lundi, ni à faire en sorte que le numéro de la semaine apparaisse entre
les tics de la grille.
Est-ce qu'un guru saurait faire ça ?
Voici le script utilisé :
#!/bin/sh
gnuplot - <<- EOF
set terminal png
set output "test.png"
set timefmt "%Y%m%d%H%M%S"
set xdata time
set format x "week %W"
set xtics 604800
set grid
show grid
set title "Température"
plot "data" using 1:2 every ::2 with lines smooth csplines
EOF
J'ai attaché le graphe généré, avec les modifications que je souhaite
(position des tics sur lundi).
Merci d'avance.
PS : petite précision : je ne connais pas à priori l'intervalle utilisé ;
il sera librement défini par l'utilisateur. Et le même topo s'applique
pour l'affichage des jours dans le mode semaine, ou des mois dans le mode
année...
--
Frédéric
http://www.gbiloba.org