Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Mencapai Perencanaan Masa Nyata Data Dalam Gelung Sementara dalam Matplotlib?

Bagaimanakah Saya Boleh Mencapai Perencanaan Masa Nyata Data Dalam Gelung Sementara dalam Matplotlib?

Susan Sarandon
Lepaskan: 2024-12-15 12:10:11
asal
399 orang telah melayarinya

How Can I Achieve Real-Time Plotting of Data Within a While Loop in Matplotlib?

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()
Salin selepas log masuk

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()
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan