Plot Masa Nyata dalam Gelung Sementara
Apabila cuba memaparkan data daripada sumber video dalam masa nyata, pengguna sering menghadapi kesukaran dalam mengemas kini plot dalam gelung sementara. Satu isu biasa ialah plot kekal statik sehingga gelung selesai. Isu ini berpunca daripada kaedah yang digunakan untuk memaparkan data dinamik.
Dalam coretan kod yang disediakan:
while i < 1000: temp_y = np.random.random() x.append(i) y.append(temp_y) plt.scatter(i, temp_y) i += 1 plt.show()
Gelung menambahkan titik data, memplot satu titik, dan kemudian memanggil plt.show (). Walau bagaimanapun, plt.show() menyekat GUI dan menghalang kod lain daripada dijalankan sehingga tetingkap ditutup secara manual, mengakibatkan kemas kini tertunda.
Untuk mencapai plot masa nyata, anda perlu menggunakan plt.pause() . Berikut ialah versi yang disemak:
import numpy as np import matplotlib.pyplot as plt plt.axis([0, 10, 0, 1]) for i in range(10): y = np.random.random() plt.scatter(i, y) plt.pause(0.05) plt.show()
Perubahan utama ialah penambahan plt.pause(0.05) selepas memplot setiap titik. plt.pause() kedua-duanya menarik data yang dikemas kini dan menjalankan gelung acara GUI. Argumen 0.05 menentukan kelewatan selama 50 milisaat, memberikan masa GUI untuk memaparkan titik dan mengendalikan interaksi pengguna (cth., menutup tetingkap).
Kod yang diubah suai ini harus memastikan plot dikemas kini dengan lancar dalam masa nyata, membenarkan pengguna untuk menggambarkan data secara dinamik.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencapai Perencanaan Masa Nyata Data Dalam Gelung Sementara dalam Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!