Plotting time series within a limit and without certain data points
6 次查看(过去 30 天)
显示 更早的评论
Hi
I have attached the timeseries data ("long_pos.mat") which I plotted to get to get the following figure.
I want to get the plot within ylim [0 600] and without the vertical lines(which are generated due to -150 values in the timeseries data). Can someone kindly help me with this? Thank you.
0 个评论
采纳的回答
darova
2020-4-12
Here is the solution
load long_pos.mat
Y = simout_x.Data; % extract data
T = simout_x.Time; % extract time
Y(Y<0) = nan; % replace negative values with 'NaN'
plot(T,Y);
更多回答(1 个)
Image Analyst
2020-4-12
Try this:
s = load('long_pos.mat')
simout_x = s.simout_x;
tsInfo = get(simout_x)
data = simout_x.Data;
% Replace -150 with nan so it won't plot.
data(data == -150) = nan;
t = simout_x.Time
for col = 1 : size(data, 2)
plot(t, data(:, col), '-', 'LineWidth', 2);
hold on;
end
xlabel('t', 'FontSize', 15);
ylabel('y', 'FontSize', 15);
ylim([0, 600]);
grid on
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!