2014-11-01 32 views
0

我想製作一個程序,繪製Lennard-Jones potential的圖表,其中參數epsilon和sigma可以用兩個滑塊調整。我想我的程序像兩個滑塊出現 使用Tkinter中的滑塊繪製圖表 - 程序沒有輸出

  • 我調整兩個滑塊
  • 我點擊「顯示」此

    1. 小窗口工作
    2. 的潛在的圖示出現

    這是我的代碼:

    from Tkinter import * 
    
    import pylab as p 
    
    def show_values(): 
        V=4*epsilon.get()*(math.pow((sigma.get()/r),12)-math.pow((sigma.get()/r,6))) 
        p.plot(t,V) 
        p.show() 
    
    
    r = p.arange(0.1, 5.0, 0.01) 
    master = Tk() 
    epsilon = Scale(master, from_=0, to=42) 
    epsilon.pack() 
    sigma = Scale(master, from_=0, to=200, orient=HORIZONTAL) 
    sigma.pack() 
    
    
    
    Button(master, text='Show', command=show_values).pack() 
    master.mainloop() 
    

    當我點擊「ru當前文件「沒有任何反應。沒有錯誤消息。我做錯了嗎?我工作在32位的windows 7上。

  • +0

    可能對完全Tkinter集成繪圖感興趣>>> http://stackoverflow.com/a/25976648/3666197 – user3666197 2014-11-01 23:04:16

    回答

    1

    一旦你構建了你的窗口,你需要調用mainloop()方法來顯示它。在最後一行完成後添加master.mainloop()

    +0

    我在最後一行之後添加了master.mainloop(),但仍然沒有任何反應。 我編輯了我的問題,因此代碼中包含您的建議。 :-) – user46147 2014-11-01 22:26:42

    +0

    哦!打擾一下!這只是我的筆記本電腦工作緩慢。發生了什麼事情:出現帶滑塊的窗口。但現在,當我點擊「顯示」時......沒有任何反應。 – user46147 2014-11-01 22:42:19

    +0

    O ....現在我注意到其餘代碼中有一些錯誤: p.plot(t,V)應該用p.plot(r,V)代替。並且math.pow出現了一些問題,所以我用**替換了它 – user46147 2014-11-01 23:02:12