How can I take valid data points only and plot them?

I've imported a set of data with some invalid data points which I've already seperated. I already have a logical array of the valid data points (it looks something like ' valid=[0 0 1 1 0] ' ). Now I need to recreate the graph with only the valid points. However, when I try to use the logical array as the index of the data, it gives me an error because the matrix sizes don't match.
The original graph and data (with invalid points still present):
My attempt on plotting the graph with only valid points:
I've also tried:
plot(serial_dates(Wo1),W(Wo1))
however, the same message still pops up.

回答(1 个)

Have you tried
plot(serial_dates(valid_ararat),speed_ararat(valid_ararat))
?

3 个评论

It works, but it changes the x values to numbers again (yyyyddMMHHmm). I need it to be in months.
Look into using datetime arrays, for instance:
dt_dates = datetime(serial_dates,'ConvertFrom','datenum');
plot(dt_dates(valid_ararat),speed_ararat(valid_ararat))

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 2-D and 3-D Plots 的更多信息

产品

版本

R2022b

提问:

2023-1-9

评论:

2023-1-9

Community Treasure Hunt

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

Start Hunting!

Translated by