Я искал этот ответ на многих форумах, но ничто не помогает мне.Итак, моя проблема: у меня есть функция, которая рисует график Matplotlib на холсте из Tkinter.Это работает очень хорошо.НО я могу сделать записи постоянными.Я имею в виду, что я хочу, чтобы пользователь ввел int, который будет размером с несуществующий список.На самом деле представьте большой список, я хочу отобразить только последние строки списка «х».для этого мне нужно получить свой вход, но моя проблема в том, что он забыл значение входа
elif x == 5:
can.create_text(240,170, fill='black', text = "Depuis combien d'année souhaitez vous le graph ?", font=('Times', -20, 'bold'))
texte1 = Label(racine, text = "Interval d'années")
texte1.grid(row = 8+y*9, column = 3,sticky='s')
Interval = Entry(racine)
Interval['fg']='red'
Interval['bg']='grey'
Interval.grid(row = 9+y*9,column=3,sticky='n')
can.create_text(160,205, fill='black', text = 'Entrez le mois ici ------>', font=('Times', -20, 'bold'))
bouton_graph = Button(racine, text = 'Tracer', command= graph_canvas)
bouton_graph.grid(row = 8+y*9, column = 4, rowspan = 2)
Итак, я создал свою запись перед моей функцией 'graph_canvas'.затем в этой функции я создаю график, а затем мне нужно вытащить информацию, которую пользователь уже набрал в записи
def get_back_values(L):
"Dummy function"
x = Mois_Temperatures(L)[2]
y1 = Mois_Temperatures(L)[0]
y2 = Mois_Temperatures(L)[1]
print('test',x,len(y1),len(y2))
return x, y1, y2
def update_graph(dt):
A= Interval.get()
L = Liste_en_Nombres('TMPARIS.csv')[0:A]
x, y1, y2 = get_back_values(L)
ax1.clear()
ax1.set_ylim(Max_Min(L)[3], Max_Min(L)[1], auto=False)
ax1.set_xlim(1, x, auto=False)
ax1.set_ylabel('Temperature en C', color='b')
ax1.set_xlabel('Les {0} derniers Mois'.format(y1[len(y1)-1]), color='black')
ax1.plot(y1, y2, 'r-o')
def graph_canvas():
graph = FigureCanvasTkAgg(fig, master=racine)
can= graph.get_tk_widget()
can.grid(row=0, column=0, rowspan = 10)
FuncAnimation(fig, update_graph)
, но есть ошибка:
Interval is not defined
Спасибо за любой изпомогите, я потерялся