Python grafik çizdirme matplotlib.pyplot

import tkinter as tk
import matplotlib.pyplot as plt

x=[]
y=[]


def veri():
    a=input("1.x değerini giriniz")
    x.append(a)
    b=input("2. x değerini giriniz")
    x.append(b)
    c=input("3. x değerini giriniz")
    x.append(c)

    d=input("1. y değerini giriniz")
    y.append(d)
    e=input("2. y değerini giriniz")
    y.append(e)
    f=input("3. y değerini giriniz")
    y.append(f)
    

def grafik():
    veri()
    plt.plot(x,y)
    plt.show()





form=tk.Tk()
form.geometry("600x500")
button=tk.Button(form,text="grafik çiz",command=grafik)
button.pack()
form.mainloop()

Bu kodları çalıştırdıgımda "Grafik Çiz " butonuna basıldıgında kullanıcadan 3 tane x ve y değeri isteyip bu değerlere göre grafik çiziyor. Burayada kadar sorun yok fakat uygulamayı komple kapatıp yeniden başlatmadan 2. kullanıcı gelip “grafik çiz” butonuna bastıgında ise eski kullanıcının verileri hala kayıtlı oldugundan 2. kullanıcının grafiğinde 1. kullanıcının da verdiği değerler grafiğinde gözüküyor. 2. kullanıcının sadece kendi verdiği değerleri görmesini istiyorum.Aynı şekilde 10. kullanıcı gelip grafik çize bastıgında önceki veriler çıkmasın. Nasıl yapabilirim bunu ?

x.clear metodunu çağırarak x listesini boşaltabilirsiniz.

1 Beğeni

teşekkürler fakat bunu tam olarak nereye yazacağımı kestiremedim. Yani “veri” isimli fonksiyonun içine x.clear() yazarsam grafik çizimi yapmadan verileri boşaltıyor. "grafik " isimli fonksiyonun en sonuna ekleyincede hiç veri almamış gibi davranıyor.

veri fonksiyonunun başına yazabilirsiniz.

1 Beğeni

Çok teşekkürler :slight_smile: nasıl olurda aklıma gelmedi bu cidden anlamıyorum :slight_smile:

time modulünü import edip “grafik” isimli fonksiyonun sonunda bulunan plt.show() un altına time.sleep(2) gibi bişi ekledim verileri silmeden önce çizim yapabilsin die ama oda çalışmamıştı :slight_smile: