TheAceHome

Untitled

Jun 10th, 2020
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.38 KB | None | 0 0
  1. root = Tk()
  2. ent1 = Entry(root, width = 50, bd = 5)
  3. ent1.pack()
  4. ent1.insert(END, 'левая граница')
  5.  
  6. ent2 = Entry(root, width = 50, bd = 5)
  7. ent2.pack()
  8. ent2.insert(END, 'правая граница')
  9.  
  10. ent3 = Entry(root, width = 50, bd = 5)
  11. ent3.pack()
  12. ent3.insert(END, 'коэфф A, по умолчанию 1')
  13.  
  14. ent4 = Entry(root, width = 50, bd = 5)
  15. ent4.pack()
  16. ent4.insert(END, 'коэфф B, по умолчанию 1')
  17.  
  18. ent5 = Entry(root, width = 50, bd = 5)
  19. ent5.pack()
  20. ent5.insert(END, 'коэфф C, по умолчанию 0')
  21.  
  22. ent6 = Entry(root, width = 50, bd = 5)
  23. ent6.pack()
  24. ent6.insert(END, 'коэфф D, по умолчанию 0')
  25. A, B, C, D = 1, 1, 1, 1
  26.  
  27. def rang(a,b):
  28. x=np.arange(a,b,0.1)
  29. y=abs(x/np.exp(abs(np.sin(x))))**0.5
  30. return x,y
  31.  
  32. def figure():
  33. f = plt.Figure(figsize=(5,4), dpi=100)
  34. a = f.add_subplot(111)
  35. x1,x2=int(ent1.get()),int(ent2.get())
  36. A, B, C, D = int(ent3.get()), int(ent4.get()), int(ent5.get()), int(ent6.get())
  37. x=np.arange(x1,x2,0.1)
  38. y=(A*abs((B*x+C)/np.exp(abs(np.sin(B*x+C))))+D)**0.5
  39. a.grid(color='b', linestyle='-', linewidth=0.5)
  40. a.plot(x,y)
  41. dataPlot = FigureCanvasTkAgg(f, master=root)
  42. dataPlot.draw()
  43. dataPlot.get_tk_widget().pack(side=TOP, fill=BOTH, expand=1)
  44.  
  45. b1 = Button(root, text = 'figure', command = figure)
  46. b1.pack(side = LEFT)
  47. master.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment