2014-07-23 4 views
0

Comment puis-je permettre à l'utilisateur de sélectionner des conditions avant de tracer?Python - Autoriser l'utilisateur à sélectionner les conditions avant de tracer

Par exemple. sélectionnez le temps 0:15:00-1:00:00 & sélectionnez AMB_TEMP puis tracer un graphique en utilisant ces informations

c'est le code:

import matplotlib.pyplot as plt 
from datetime import time, datetime 

x = [] 
y = [] 
t = [] 

fig = plt.figure() 
rect = fig.patch 
rect.set_facecolor('#31312e') 

readFile = open('data.txt', 'r') 
sepFile = readFile.read().split('\n') 
readFile.close() 

for idx, plotPair in enumerate(sepFile): 
    if idx > 5: 
     xAndY = plotPair.split(';') 
     time_string = xAndY[0] 
     time_string = time_string.replace(' ', '') # remove blanks 
     datetime_obj = datetime.strptime(time_string, '%H:%M:%S') 
     t.append(datetime_obj) 
     x.append(float(xAndY[2])) 
     y.append(float(xAndY[3])) 

ax1 = fig.add_subplot(1, 1, 1, axisbg='blue') 
ax1.plot(t, y, 'c', linewidth=3.3) 

plt.title('Alternate Energy') 
plt.xlabel('time mins') 

plt.show() 
  • Qu'est-ce que le code n'est juste intrigue de 2 colonnes, l'utilisateur ne peut manipuler l'une des données

Ceci est mes données de fichier txt:

[messung] 
Uhrzeit; 
Intervall;AMB_TEMP;IRAD;W_D;W_S;Poly_M_Tem;TF_M_Temp; 
s;DegC;W/m2;Deg;m/s;DegC;DegC 
[Start] 
00:00:00;900;25.3;55.8;4.5;0.4;; 
00:15:00;900;26.1;55.8;5.5;1.0;; 
00:30:00;900;26.1;55.8;6.1;1.0;; 
00:45:00;900;26.1;55.9;5.7;0.9;; 
01:00:00;900;26.1;55.9;5.8;0.7;; 
01:15:00;900;26.1;55.8;6.4;0.8;; 
01:30:00;900;26.1;55.8;6.1;0.8;; 
01:45:00;900;26.1;55.8;5.7;1.0;; 
02:00:00;900;26.0;55.8;5.8;1.1;; 
. 
. 
. 
22:45:00;900;25.0;55.7;6.1;0.6;; 
23:00:00;900;25.0;55.8;5.2;0.4;; 
23:15:00;900;25.2;55.8;5.7;0.5;; 
23:30:00;900;25.3;55.8;6.2;0.5;; 
23:45:00;900;25.4;55.8;5.8;0.4;; 

Répondre

0

Je suppose que ce que vous cherchez est: raw_input qui vous permet de poser une question par exemple, et d'obtenir une entrée de l'utilisateur;)

s = raw_input('Select a time from 00:15:00 to 01:00:00') 

Ensuite, vous devez boucle tandis que l'entrée n'est pas entre tes conditions. Et même pour la deuxième entrée dont vous avez besoin.

Vous pouvez voir plus ici: https://docs.python.org/2/library/functions.html#raw_input

Si vous voulez, vous pouvez également créer une interface graphique pour obtenir plus belle.

+0

comment puis-je tracer l'heure si j'ai une donnée txt qui vient avec une date et l'heure. par exemple, 23/7/2014 6:00 PM, 17,8 23/7/2014 6:15 PM, 27,8 23/7/2014 6:30 PM, 19,8 23/7/2014 6 : 45 PM, 12.8 –

+0

Il suffit de l'analyser au format dont vous avez besoin s'il contient toutes les informations dont vous avez besoin. –

Questions connexes