Trong trực quan hóa dữ liệu, biểu đồ thời gian thực có thể là một công cụ mạnh mẽ để phân tích dữ liệu khi dữ liệu truyền vào hệ thống thu nhận. Cho dù là dữ liệu nhiệt độ, dữ liệu âm thanh, dữ liệu thị trường chứng khoán hay thậm chí là dữ liệu truyền thông xã hội - việc theo dõi dữ liệu trong thời gian thực thường có lợi để đảm bảo rằng thiết bị và thuật toán hoạt động bình thường. Show Trong hướng dẫn này, tôi sẽ phác thảo một hàm cơ bản được viết bằng Python cho phép vẽ dữ liệu theo thời gian thực. Chức năng này đơn giản và dễ hiểu, nhưng kết quả mạnh mẽ của nó cho phép bất kỳ nhà nghiên cứu hoặc nhà phân tích dữ liệu nào tận dụng tối đa khả năng giám sát dữ liệu khi dữ liệu truyền vào máy tính của người dùng Chức năng vẽ sơ đồ thời gian thực của PythonBạn có thể tìm thấy kho lưu trữ GitHub chứa mã được sử dụng trong hướng dẫn này tại https. //github. com/kỹ sư thể thao/pylive
import matplotlib.pyplot as plt import numpy as np # use ggplot style for more sophisticated visuals plt.style.use('ggplot') def live_plotter(x_vec,y1_data,line1,identifier='',pause_time=0.1): if line1==[]: # this is the call to matplotlib that allows dynamic plotting plt.ion() fig = plt.figure(figsize=(13,6)) ax = fig.add_subplot(111) # create a variable for the line so we can later update it line1, = ax.plot(x_vec,y1_data,'-o',alpha=0.8) #update plot label/title plt.ylabel('Y Label') plt.title('Title: {}'.format(identifier)) plt.show() # after the figure, axis, and line are created, we only need to update the y-data line1.set_ydata(y1_data) # adjust limits if new data goes beyond bounds if np.min(y1_data)<=line1.axes.get_ylim()[0] or np.max(y1_data)>=line1.axes.get_ylim()[1]: plt.ylim([np.min(y1_data)-np.std(y1_data),np.max(y1_data)+np.std(y1_data)]) # this pauses the data so the figure/axis can catch up - the amount of pause can be altered above plt.pause(pause_time) # return line so we can update it again in the next iteration return line1 Một vài lưu ý về chức năng trên
Ví dụ sử dụng dữ liệu ngẫu nhiênCách đơn giản nhất để kiểm tra máy vẽ trực tiếp là nhập dữ liệu ngẫu nhiên và xem nó hoạt động. Tôi đã viết một tập lệnh đơn giản sử dụng numpy để tạo dữ liệu ngẫu nhiên và vẽ đồ thị bằng hàm ở trên. Ví dụ này cũng có trong kho lưu trữ GitHub và là tập lệnh được sử dụng để tạo. ảnh gif được hiển thị ở đầu bài đăng trên blog này [] from pylive import live_plotter import numpy as np size = 100 x_vec = np.linspace(0,1,size+1)[0:-1] y_vec = np.random.randn(len(x_vec)) line1 = [] while True: rand_val = np.random.randn(1) y_vec[-1] = rand_val line1 = live_plotter(x_vec,y_vec,line1) y_vec = np.append(y_vec[1:],0.0) Lưu ý rằng trong đoạn script trên, tôi không vẽ lại dữ liệu trục x. Điều này cho phép chúng tôi nhanh chóng cập nhật dữ liệu y. Đây là ưu điểm di chuyển nhanh của dòng1. set_ydata(y1_data) trái ngược với plt truyền thống. phương thức plot(). Tập lệnh trên cũng có thể được sử dụng để cập nhật cả dữ liệu x và y, nhưng có nhiều vấn đề phát sinh hơn khi xử lý cả chuyển động x và y. Các giới hạn trục x sẽ cần phải tích cực di chuyển các giới hạn của nó, cũng như các giới hạn trục y. Điều này không phải là không thể, tuy nhiên, tôi nghĩ rằng một lợi thế của giải pháp thay thế là chỉ cần thay đổi các nhãn đánh dấu trục x thay vào đó và để yên các giới hạn thực tế. Để chủ động cập nhật nhãn đánh dấu trục x, hãy sử dụng phương pháp sau dòng 1. trục. set_xticklabels(date_vector) Điều này sẽ duy trì các giới hạn, căn chỉnh đánh dấu trục x, giới hạn, nhưng thay đổi nhãn trên trục x. Kết luận và Tiếp tụcBài đăng trên blog ngắn này đã giới thiệu một chức năng vẽ sơ đồ trực tiếp đơn giản cho Python. Chức năng vẽ biểu đồ trực tiếp có khả năng tạo trực quan hóa dữ liệu thời gian thực, chất lượng cao, tốc độ cao bằng Python bằng cách sử dụng matplotlib và chỉ một vài dòng mã. Trong bài đăng tiếp theo của tôi về chủ đề này, tôi sẽ giới thiệu trực quan hóa các từ bằng cách sử dụng cùng một phương pháp đã nêu ở trên. Trực quan hóa từ sẽ bắt chước một phương pháp trực quan gọi là 'đám mây từ' và cập nhật các từ dựa trên các cập nhật của Wikipedia trong thời gian thực.
Nhấp vào đây để xem Phần II để tìm hiểu cách tạo một đám mây từ với dữ liệu Wikipedia Trích dẫn cho trang này “Là thành viên của Chương trình Amazon Associates, việc nhấp vào liên kết có thể khiến Cổng thông tin Maker nhận được một khoản hoa hồng nhỏ giúp hỗ trợ các dự án trong tương lai. ”
Xem thêm trong Lập trình Đặc sắc Ngày 15 tháng 7 năm 2021 Trình theo dõi GPS di động với Arduino Ngày 15 tháng 7 năm 2021 Ngày 15 tháng 7 năm 2021 Ngày 8 tháng 7 năm 2021 Màn hình e-Paper hỗ trợ Bluetooth với Arduino Ngày 8 tháng 7 năm 2021 Ngày 8 tháng 7 năm 2021 27 Tháng Sáu, 2021 Giới thiệu về RFID với Arduino 27 Tháng Sáu, 2021 27 Tháng Sáu, 2021 9 tháng 3 năm 2021 Màn hình OLED Raspberry Pi Pico (SSD1306) 9 tháng 3 năm 2021 9 tháng 3 năm 2021 1 tháng 3 năm 2021 Đèn LED dạng vòng WS2812 với Raspberry Pi Pico 1 tháng 3 năm 2021 1 tháng 3 năm 2021 Ngày 11 tháng 1 năm 2021 Hiệu chuẩn từ kế với Raspberry Pi Ngày 11 tháng 1 năm 2021 Ngày 11 tháng 1 năm 2021 Ngày 3 tháng 1 năm 2021 Hiệu chỉnh con quay hồi chuyển và gia tốc kế với Raspberry Pi Ngày 3 tháng 1 năm 2021 Ngày 3 tháng 1 năm 2021 22 tháng 11 năm 2020 Ghi âm thanh nổi trên Raspberry Pi 22 tháng 11 năm 2020 22 tháng 11 năm 2020 26 Tháng Tư, 2020 Trực quan hóa địa lý bằng Python với Cartopy 26 Tháng Tư, 2020 26 Tháng Tư, 2020 31 Tháng ba, 2020 Trình giả lập radar với Arduino + Python 31 Tháng ba, 2020 31 Tháng ba, 2020 Đặc sắc bán hết Bảng Arduino MakerBLE $22. 00 Micrô USB cho Raspberry Pi $15. 00 Mô-đun LiDAR TF-Luna $29. 00 Chỉ còn 1 cái trong kho Bộ khởi động Raspberry Pi Pico $15. 00 Mảng 4 micrô QuadMic cho Raspberry Pi $25. 00 Mô-đun động cơ rung cho Arduino $5. 00 Bảng đột phá cảm biến áp suất có cổng MPS20N0040D $12. 00 Chỉ còn 2 cái trong kho Cổng thông tin nhà sản xuất Arduino Uno Rev3 Board $13. 00 Máy ảnh nhiệt MLX90640 cho Raspberry Pi (32 x 24 pixel) từ $95. 00 bán hết Đèn LED dạng vòng 16 điểm ảnh RGB $15. 00 Phân tích dữ liệu, Lập trình, Python Joshua HriskoNgày 14 tháng 8 năm 2018 matplotlib, Python, Lập trình Python, Python Live, Mã Python, Trực quan hóa, Thuật toán Làm cách nào để vẽ thời gian chạy trong Python?Nó chấp nhận hai tham số a và b và thực hiện phép cộng trên a và b. . chắc chắn thêm (a, b). trả lại a + b hoán vị def (chuỗi, bước = 0). nếu bước == len(chuỗi). in "". . nhập matplotlib. pyplot dưới dạng plt nhập numpy dưới dạng np nhập timeit nhập toán nhập plt ngẫu nhiên. . ns = np. . độ = 4 coeffs = np Những thư viện Python nào có thể được sử dụng để vẽ biểu đồ tương tác thời gian thực?Matplotlib . Một trong những công cụ tốt nhất để phân tích dữ liệu là Matplotlib. Nó được sử dụng để phân tích dữ liệu 2 chiều và vẽ đồ thị, biểu đồ và biểu diễn dữ liệu cơ bản.
Seaborn có tốt hơn matplotlib không?Matplotlib là gói đồ họa Python để trực quan hóa dữ liệu và tích hợp độc đáo với Numpy và Pandas. Các khả năng và cú pháp tương tự có sẵn trong Pyplot như trong MATLAB và người dùng MATLAB có thể dễ dàng hiểu được nó. Seaborn thoải mái hơn với khung dữ liệu Pandas .
Làm cách nào để vẽ dữ liệu CSV bằng Python?MatPlotLib với Python . Đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô con Lập danh sách các tiêu đề của. tệp CSV Đọc tệp CSV có tiêu đề Đặt chỉ mục và vẽ biểu đồ khung dữ liệu Để hiển thị hình, sử dụng phương thức show() |