How to do moving average for x and y data points in a scatter plot?

37 views (last 30 days)
I have soil moisture (x) data in the first column and correlation(y) data in the second column. I want a moving average line through the scatter plot of x and y data.I am getting a line which is connecting all the points which seems quite wrong.
Can somebody help me with this?
Thank you so much.
  2 Comments
Dyuman Joshi
Dyuman Joshi on 23 Apr 2023
Moving average how many points? What have you tried and what seems to be wrong?
Vidushi Koliyan
Vidushi Koliyan on 23 Apr 2023
Below is the code I used for 10 points. But it doesn't include x data. I want to see how moving average will look like with x y data.
x = DATA(:,1);
y = DATA(:,2);
plot(x,y,'xr-')
N = 8;
V = ones(1,N)/N;
Z = conv(y,V,'same')
hold on
plot(x,Z,'b-')

Sign in to comment.

Accepted Answer

Dyuman Joshi
Dyuman Joshi on 23 Apr 2023
Moved: Image Analyst on 23 Apr 2023
It's not clear to me what exactly do you want to achieve.
You say 10 points, but you use N=8.
"I want to see how moving average will look like with x y data. "
Do you mean like this?
load DATA.mat
x = DATA(:,1);
y = DATA(:,2);
scatter(x,y,'xr')
N = 8;
%Moving mean of both x and y data
arr=movmean(DATA,N,1);
hold on
plot(arr(:,1),arr(:,2),'b-')
  1 Comment
Image Analyst
Image Analyst on 23 Apr 2023
Garbage in garbage out. I think that even after smoothing the data points are unreliable. What is the time (called "x" by you instead of "t") sampling rate of this soil mosture device? What time period is it over? Milliseconds, seconds, hours, weeks, months? There seems to be little correlation between adjacent time points and I would not expect that for soil moisture unless the time points were very far apart.

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!