Page 2 sur 5

Re: La température avec normales saisonnière

Posté : 19 déc. 2014, 08:50
par jturlier
Salut Pierre-André,
je ne me suis pas penché sur la raison pour laquelle ça ne fonctionne pas, mais sur la mocheté du code qui saute aux yeux comme un coup de pied au c..l
Il existe une fonction qui est prévue pour faire ça proprement (Je n'ai pas dit que ta méthode ne fonctionne pas) :

Code : Tout sélectionner

switch ($i) {
    case '01':
        $tnmin[$i]=-2.5; $tnmax[$i]=3.0;
        break;
    case '02':
        $tnmin[$i]=-2.2; $tnmax[$i]=4.9;
        break;
    case '03':
        $tnmin[$i]=0.8; $tnmax[$i]=10.1;;
        break;
    case '04':
        $tnmin[$i]=3.4; $tnmax[$i]=14.1;
        break;
    case '05':
        $tnmin[$i]=7.8; $tnmax[$i]=18.8;
        break;
    case '06':
        $tnmin[$i]=11; $tnmax[$i]=22.3;
        break;
    case '07':
        $tnmin[$i]=12.9; $tnmax[$i]=25.2;
        break;
    case '08':
        $tnmin[$i]=12.7; $tnmax[$i]=24.5;
        break;
    case '09':
        $tnmin[$i]=9.5; $tnmax[$i]=19.7;
        break;
    case '10':
        $tnmin[$i]=6.1; $tnmax[$i]=14.1;
        break;
    case '11':
        $tnmin[$i]=1.3; $tnmax[$i]=7.3;
        break;
    case '12':
        $tnmin[$i]=-1.2; $tnmax[$i]=3.8;
        break;
}
$tnnormale[] = array($time[$i],(float)$tnmin[$i], (float)$tnmax[$i]);
L'autre point qui pourrait être ton problème c'est que tu crois traiter 01, 02, ...11, 12 comme du texte ! '01' ou "01" c'est la façon normale d'écrire autrement tu auras du numérique.
Il faut que tu t'assures que $i est bien sous la même forme '01', '02',...

Bonne journée

Jean

Re: La température avec normales saisonnière

Posté : 19 déc. 2014, 09:43
par Météo Villarzel
Merci Jean,
je regarde ça ce week, mais c'est Pascal qui ne va pas être content que tu le traite de moche :lol:

A+

Re: La température avec normales saisonnière

Posté : 19 déc. 2014, 11:12
par jturlier
Météo Villarzel a écrit :Merci Jean,
je regarde ça ce week, mais c'est Pascal qui ne va pas être content que tu le traites de moche :lol:

A+
Même pas peur à moins qu'il fasse plus de 1.80 m et plus de 88kg 8-) 8-)
Et de plus ce n'est pas lui que j'ai traité de moche, mais son code ;) ;)

Re: La température avec normales saisonnière

Posté : 20 déc. 2014, 13:46
par PascalWMR
Salut tous le monde
jturlier a écrit :4
Même pas peur à moins qu'il fasse plus de 1.80 m et plus de 88kg 8-) 8-)
Et de plus ce n'est pas lui que j'ai traité de moche, mais son code ;) ;)
1,86 m, 102 Kg :lol:

Ceci dit, je ne connaissait pas cette fonction. A vrai dire, j'ai commencé le PHP que depuis que Pierre-André à mis sont tuto Highcharts en ligne.
Bon j'arrive à me débrouiller car à une certaine époque, mais çà, c'était avant :geek: :) , pendant mes loisirs , j'ai un peu bricoler en VB6.
J'ai aussi bricolé en je ne sais plus quoi sur Amstrad CPC6128 ainsi que sur certain IBM dans mon ancien boulot ou tout était en ASCII

J'ai réécrit mon pas beau code :cry: avec le tiens Jean. Petite modif pour que ça marche il faut mettre switch ($mois[$i]) au lieu de switch ($i)

A+
Pascal

Re: La température avec normales saisonnière

Posté : 20 déc. 2014, 19:37
par alain
coucou
Bon j'arrive à me débrouiller car à une certaine époque, mais çà, c'était avant , pendant mes loisirs , j'ai un peu bricoler en VB6.
J'ai aussi bricolé en je ne sais plus quoi sur Amstrad CPC6128 ainsi que sur certain IBM dans mon ancien boulot ou tout était en ASCII
bienvenue au club
petit coups de nostalgie avant dernier message
http://www.boock.ch/meteo/forum/viewtop ... p=934#p934

Tu sait Jean vient de loin, il est pire que nous :lol:
petit secret
je crois que Jean a ce modele d'ordinateur, mais chutttt
http://www.ina.fr/video/CPF86638278
https://www.youtube.com/watch?v=X1lbC0-MxQU
https://www.youtube.com/watch?v=MDQHE0W-qHs

Bahhh c'est noel, on se laisse aller ;)

Re: La température avec normales saisonnière

Posté : 20 déc. 2014, 19:55
par Météo Villarzel
PascalWMR a écrit : 1,86 m, 102 Kg :lol:
Belle bête :lol:

Bon je n'ai pas compris pourquoi le code de Pascal merdait uniquement sur deux mois, mais en faisant le mixte des deux, ça fonctionne.
Merci à vous deux.

Voilà le graphique sur 6 mois.
6mois.jpg
Bonne soirée
A+

Re: La température avec normales saisonnière

Posté : 21 déc. 2014, 09:38
par PascalWMR
Bonjour,
Météo Villarzel a écrit :
Bon je n'ai pas compris pourquoi le code de Pascal merdait uniquement sur deux mois, mais en faisant le mixte des deux, ça fonctionne.
Merci à vous deux.
Ben oui je comprend pas pourquoi ça ne marchait pas chez toi. Inquiet, j'ai testé chez moi en local en changeant le $start et le $stop pour afficher de juillet à octobre et ça fonctionnait :!:

Par contre je suis reconnaissant à Jean, car son code s’exécute bien plus rapidement. Pour ce graphique dont on parle, ça supprime quand même 11 boucles de test. Du coup je réécrit mes scripts qui font appel a des boucles de test pour déterminer les normales et pour certains, ça va quand même supprimer 35 boucles de test. Un broutille quoi...

Un autre merci également pour son astuce, la barre "Web Developper" de Firefox évoquée dans le post 935. Ça m'a permis de gagner également du temps au chargement des pages.
En effet, les pages était rechargées 2 fois car les navigateurs ne trouvaient pas le type d'encodage dans les 1024 premiers octets. Et pour cause, j'encodait en json les données servant au graphique juste avant la balise head.
Il m'a suffit de déplacer le script d'encodage avant le script Highcharts ou stock selon, pour remédier au problème.

A+
Pascal

Re: La température avec normales saisonnière

Posté : 21 déc. 2014, 12:14
par jturlier
alain a écrit : Tu sait Jean vient de loin, il est pire que nous :lol:
petit secret
je crois que Jean a ce modele d'ordinateur, mais chutttt
http://www.ina.fr/video/CPF86638278
https://www.youtube.com/watch?v=X1lbC0-MxQU
https://www.youtube.com/watch?v=MDQHE0W-qHs
Malheureusement je n'ai pas travaillé sur ce type d'ordi, mais oui, j'ai pratiqué sur du matériel plus petit équipé des mêmes tubes (pentode ou heptode en général dans des plugs individuels)
Pour la mémoire à ferrites, tu as à quelque chose d'un peu évolué déjà, puisque c'était lié à une carte enfichable. ( begin nostalgie) J'ai eu affaire avec des blocs de 4 kO d'environ 25x25x30 dont l'électronique était contenue dans un meuble de 2 fois la taille (en volume d'une grosse machine à laver.
(end nostalgie)
Bon revenons aux choses sérieuses, le script de Pascal ne fonctionnait pas tout simplement parce que PHP ne caractérise pas le type de données : par exemple 01 c'est 1 si on veut 01 il faut l'écrire '01', de même si on a une variable qui contient '001' (var_x='001';) et qu'on souhaite l'utiliser en temps que numérique, généralement on écrit var_y= var_x*1; , ce qui force le type de var_y en numérique.
Bon ceci étant dit,
PascalWMR a écrit :1,86 m, 102 Kg :lol:
je m'en fout, je cours encore vite quand j'ai peur :P

En tout cas je suis bien content que mes modestes connaissances puisse encore servir à quelqu'un.

Je vous souhaite à tous, de joyeuses fêtes de fin d'année, et comme vous n'êtes pas dans la Loire Atlantique, le préfet ne peut pas vous interdire d'avoir une crèche,... avec des santons ;) à Alain !

Finalement Pierre-André malgré que tu aies pas l'âge de mon fils, tu as créé un forum pour les vieux ! :D :D :D :lol:

Re: La température avec normales saisonnière

Posté : 31 déc. 2015, 09:54
par PascalWMR
Bonjour

Je reprend une remarque qu'avait fait Javier le 26 novembre 2014.
Javier a écrit : Les valeurs de la température quotidienne maximale et minimale, nous les avons dans le tableau MiniMaxidata:

t_out_maxi
t_out_mini

Si nous pouvions obtenir la moyenne de ces valeurs pendant les années de fonctionnement de la station, nous aurions nos valeurs journalières "normales".

Le problème est de mettre cela en pratique :roll:
En m'inspirant du graphique Créé par Météo Meyenheim, adapté par Javier avec l'aide de Jean, traduit par Pierre-André, bon j'arrête parce-que la liste commence à être longue ;), j'ai fait ce graphique.
Evolution de la température moyenne des mois au fil des années.
Je pense que c'est de cela que Javier parlait. La colonne la plus à droite calcule la normale mensuelle de chaque mois.
La difficulté pour faire ce graphique, a été récupérer depuis la BDD, toutes les données qui nous intéressait en un seule requête (en réalité 12x1 + 1) +1, de tracer tous les graphiques en même temps sur une seule page, et d'afficher ces graphiques dans des onglets (pour qu'ils soient affichés un par un) sans passer par des "iframe" et en se passant partiellement de jquery-ui (y fait des caprices pour l'affichage des tabs :( , y veux pas que ça tienne dans la largeur imposée :!: ).
Il fallait également qu’en cours d'année, les mois non encore écoulés apparaissent sur l'xaxis et que la colonne "Normale de la station" soit toujours la plus à droite.
L’avantage de ce graphique, est que toutes les moyennes (mois, année, totale), sont recalculées en permanence avec les derniers relevés de la station. En clair il est continuellement à jours sans aucunes interventions.

Sur ce, je vous souhaite
BA2016.jpg
A+
Pascal

Edit du 02/01/2016
Aujourd'hui, j'ai apporté une modif au graphique.
J'ai intégré une nouvelle donnée. L'écart entre la température moyenne mensuelle et la "Normale" calculée par la station.
Lors du chargement du graphique, c'est l'onglet du mois en cours qui s'affiche directement au lieu de celui de janvier.

Si un tuto intéresse du monde, faite le savoir.

A+
Pascal

Re: La température avec normales saisonnière

Posté : 04 janv. 2016, 23:31
par Météo Villarzel
Eh bin bravo pour ce graphique, belle maîtrise du PHP.
Donc la colonne de droite est la moyenne des mois et pas du mois comme tu l'as indiqué ?
Je pinaille mais ça prête à confusion et sur le coup au premier coup d' œil je me suis dit, comment il peu y avoir une moyenne sur février 2016 alors qu'on est en janvier :?:

Evidemment, un petit tuto (pas trop compliqué pour nos petites têtes) serais le bienvenu.

A+