plotting few values continuously in real time

1 visualización (últimos 30 días)
Mamudi
Mamudi el 12 de Abr. de 2012
Comentada: Walter Roberson el 3 de Feb. de 2025
i have data coming from the gps and i want to plot it for every one second. like a ecg graph. the values are like 560,940,780. please help

Respuestas (1)

ag
ag el 3 de Feb. de 2025
To plot GPS data in real-time, similar to an ECG graph, you can utilize MATLAB's animatedline function within a loop that updates the plot every second. Below is a structured approach to achieve this:
% Initialize the figure and animated line
figure;
h = animatedline('LineWidth', 2); % Bold line for clear visibility
ax = gca; % Get current axes
ax.YGrid = 'on'; % Add grid for better visualization
xlabel('Time (s)');
ylabel('GPS Value');
title('Real-Time GPS Data Plot');
% Simulate incoming GPS data (replace this with your actual data)
gps_data = [560, 940, 780, 600, 880, 720, 650, 900, 780]; % Example data
time_interval = 1; % 1-second interval
t = 0; % Initialize time counter
% Example for reading from a serial port (adjust COM port and settings)
s = serialport('COM3', 9600); % Replace 'COM3' and baud rate as needed
while true % modify the breaking condition accordingly
data = readline(s); % Read GPS data from the device
gps_value = str2double(data); % Convert string to numeric
t = t + 1;
addpoints(h, t, gps_value);
drawnow;
pause(1);
end
For more details, please refer to the following MathWorks documentations:
  • animatedline - https://www.mathworks.com/help/matlab/ref/animatedline.html
  • serialport - https://www.mathworks.com/help/matlab/ref/serialport.html
  • readline - https://www.mathworks.com/help/instrument/serialport.readline.html
  • addpoints - https://www.mathworks.com/help/matlab/ref/addpoints.html
  • drawnow - https://www.mathworks.com/help/matlab/ref/drawnow.html
Hope this helps!
  1 comentario
Walter Roberson
Walter Roberson el 3 de Feb. de 2025
Note:
animatedline() and addpoints() were not available at the time this question was originally asked.
serialport() and readline() were not available at the time this question was originally asked.

Iniciar sesión para comentar.

Categorías

Más información sobre Graphics Performance en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by