Comment creer un fichier serveur afficher des graphes sur python
Résolu/Fermé
spainsteph
Messages postés
7
Date d'inscription
jeudi 15 janvier 2015
Statut
Membre
Dernière intervention
11 novembre 2015
-
15 janv. 2015 à 16:38
hharchi9 Messages postés 567 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 1 juillet 2015 - 17 janv. 2015 à 14:23
hharchi9 Messages postés 567 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 1 juillet 2015 - 17 janv. 2015 à 14:23
A voir également:
- Comment creer un fichier serveur afficher des graphes sur python
- Comment créer un groupe whatsapp - Guide
- Créer un compte gmail - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Créer un compte google - Guide
2 réponses
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
24
15 janv. 2015 à 16:57
15 janv. 2015 à 16:57
Bonjour,
Vous cherchez à afficher deux graphiques sur le même dessin c'est bien ça ?
Pour ce faire il suffit de faire un second plot à la suite du premier avec les données de la seconde courbe.
Vous cherchez à afficher deux graphiques sur le même dessin c'est bien ça ?
Pour ce faire il suffit de faire un second plot à la suite du premier avec les données de la seconde courbe.
spainsteph
Messages postés
7
Date d'inscription
jeudi 15 janvier 2015
Statut
Membre
Dernière intervention
11 novembre 2015
15 janv. 2015 à 18:05
15 janv. 2015 à 18:05
le truc c'est que les données de la seconde courbe ( comme celle de la première d'ailleurs) sont retournées par la fonction que j'ai crée plus sauf que je sais pas quelle serait la syntaxe pour le second plot. Tout en haut (4ième ligne ) jai fais return T,P...en effacant le P je reussi a faire un plot de T...mais le return de deux valeurs..j'arrive pas
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
24
15 janv. 2015 à 22:34
15 janv. 2015 à 22:34
Si vous donniez le morceau de code dans lequel vous utilisez cette fonction (les valeurs P et T) on pourrais peut-être y voir plus clair car dans ce que vous avez donné, je ne vois nulle part où vous utilisez la fonction
spainsteph
Messages postés
7
Date d'inscription
jeudi 15 janvier 2015
Statut
Membre
Dernière intervention
11 novembre 2015
15 janv. 2015 à 23:17
15 janv. 2015 à 23:17
en fait j'ai pas voulu mettre le programme entier parce qu'il serait un peu long sinon voila...
import random
def Temperature ():
#Tableau du nombre de jour par mois
Mois = ['janvier','fevrier','mars','avril','mai','juin','juillet','aout','septembre','octobre','novembre','decembre']
Nmois=[31,28,31,30,31,30,31,31,30,31,30,31]
#Tableau des temperqtures minimales par mois
Tmin = [-1,0,3,5,9,12,14,14,11,8,3,1]
#Tableau des temperatures maximales par mois
Tmax = [8,9,13,16,20,24,25,26,22,18,11,8]
#Tableau des temperatures moyennes par mois
Tmoy = [4,3,7,11,13,15,17,19,17,14,10,5]
T=[]
for i in range (0,12):
Ttmp= []
for j in range (0,Nmois[i]):
tmpValue = random.uniform(Tmin[i],Tmax[i])
Ttmp.append (tmpValue)
TmoyTmp = sum(Ttmp)/len(Ttmp)
difference = Tmoy[i]-TmoyTmp
#
if difference !=0 :
for j in range (0, Nmois[i]):
T.append('%.2f' % (Ttmp[j]+difference))
return T
data = [ {'fichier' : 'Données' ,'Ville' : 'Clermont Ferrant', 'Temperature': Temperature()
}
]
import json
jsonData = json.dumps(data)
print ('JSON',jsonData)
myfile = open ('data.txt', 'w')
json.dump(jsonData,myfile)
myfile.close()
import socket
s= socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
host = '127.0.0.1';
port = 8888 ;
jsonData = json.dumps(data)
s.sendto(jsonData.encode('utf-8'),(host,port))
import random
def Temperature ():
#Tableau du nombre de jour par mois
Mois = ['janvier','fevrier','mars','avril','mai','juin','juillet','aout','septembre','octobre','novembre','decembre']
Nmois=[31,28,31,30,31,30,31,31,30,31,30,31]
#Tableau des temperqtures minimales par mois
Tmin = [-1,0,3,5,9,12,14,14,11,8,3,1]
#Tableau des temperatures maximales par mois
Tmax = [8,9,13,16,20,24,25,26,22,18,11,8]
#Tableau des temperatures moyennes par mois
Tmoy = [4,3,7,11,13,15,17,19,17,14,10,5]
T=[]
for i in range (0,12):
Ttmp= []
for j in range (0,Nmois[i]):
tmpValue = random.uniform(Tmin[i],Tmax[i])
Ttmp.append (tmpValue)
TmoyTmp = sum(Ttmp)/len(Ttmp)
difference = Tmoy[i]-TmoyTmp
#
if difference !=0 :
for j in range (0, Nmois[i]):
T.append('%.2f' % (Ttmp[j]+difference))
return T
data = [ {'fichier' : 'Données' ,'Ville' : 'Clermont Ferrant', 'Temperature': Temperature()
}
]
import json
jsonData = json.dumps(data)
print ('JSON',jsonData)
myfile = open ('data.txt', 'w')
json.dump(jsonData,myfile)
myfile.close()
import socket
s= socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
host = '127.0.0.1';
port = 8888 ;
jsonData = json.dumps(data)
s.sendto(jsonData.encode('utf-8'),(host,port))
spainsteph
Messages postés
7
Date d'inscription
jeudi 15 janvier 2015
Statut
Membre
Dernière intervention
11 novembre 2015
15 janv. 2015 à 23:21
15 janv. 2015 à 23:21
ca c'est le code ou je defini ma fonction Temperature et je retourne T , je les met sous forme Json et j'exporte vers un serveur.... et le code du serveur et du plot fait sur mon fichier nommé Data ( et donc juste sur la temperature parce que ma fonction ne retourne que T pour le moment) est le suivant :
import socket
import json
UDP_IP = "127.0.0.1"; #valable pour toute les machine d'une interface reseau.
UDP_PORT = 8888 ;
sock= socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #UDP
sock.bind((UDP_IP,UDP_PORT))
data, addr=sock.recvfrom(8096)
jsonData=json.loads(data.decode())
print (jsonData)
import matplotlib.pyplot as plt
plt.plot(range(0,365), jsonData[0]['Temperature'],'b--')
plt.show()
import socket
import json
UDP_IP = "127.0.0.1"; #valable pour toute les machine d'une interface reseau.
UDP_PORT = 8888 ;
sock= socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #UDP
sock.bind((UDP_IP,UDP_PORT))
data, addr=sock.recvfrom(8096)
jsonData=json.loads(data.decode())
print (jsonData)
import matplotlib.pyplot as plt
plt.plot(range(0,365), jsonData[0]['Temperature'],'b--')
plt.show()
spainsteph
Messages postés
7
Date d'inscription
jeudi 15 janvier 2015
Statut
Membre
Dernière intervention
11 novembre 2015
15 janv. 2015 à 23:24
15 janv. 2015 à 23:24
Par la suite j'ai modifié un peu ma fonction pour retourner T et P et donc j'aimerais savoir comment du fichier serveur je pourrais faire un plot sur les deux variables ( et si possible sur le meme graphe )...Merci
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
24
16 janv. 2015 à 17:58
16 janv. 2015 à 17:58
Petite question toute bête ne serait-il pas plus simple de créer deux fonctions distinctes ?
D'après ce que j'ai compris, vs souhaitez représenté l'évolution de T et de P en fonction des jours de l'année, c'est bien ça ?
Pour opérer sur les deux valeurs que retourne votre fonction, il faut utiliser
A partir de là vous pouvez exécuter un nouveau plot à la suite du premier en remplaçant T par P et vous devriez obtenir le résultat escompté.
D'après ce que j'ai compris, vs souhaitez représenté l'évolution de T et de P en fonction des jours de l'année, c'est bien ça ?
Pour opérer sur les deux valeurs que retourne votre fonction, il faut utiliser
Temperature()[0]et
Temperature()[1]qui vous donneront respectivement T et P si votre fonction retourne :
return T,P
A partir de là vous pouvez exécuter un nouveau plot à la suite du premier en remplaçant T par P et vous devriez obtenir le résultat escompté.