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.

Answers (1)

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

3 Comments

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

Sign in to comment.

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products

Release

R2022b

Asked:

on 9 Jan 2023

Commented:

on 9 Jan 2023

Community Treasure Hunt

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

Start Hunting!