How to include plot in a function?

1 view (last 30 days)
redroses
redroses on 19 Apr 2020
Commented: Tommy on 19 Apr 2020
Hi everyone, basically this is the coding function (https://uk.mathworks.com/matlabcentral/fileexchange/880-mutual-average-information) that I've used to calculate the Average Mutual Information (AMI) in order to find the time delay. I want to plot time lags against AMI. similar to this picture. The problem now is i don't know how to include plotting coding in my fuction. Hope you guys can teach me yaa. thanks in advance!
  4 Comments
redroses
redroses on 19 Apr 2020
Edited: redroses on 19 Apr 2020
hi mr tommy. first and foremost thanks for the reply ya. based on this coding https://uk.mathworks.com/matlabcentral/fileexchange/880-mutual-average-information , input for lag is 10 and for x value is like the one that I attached in the microsoft excel here. I've tried to remove if lag>1 like you suggested but only blank chart is displayed...
Tommy
Tommy on 19 Apr 2020
If you are inputting a scalar value for lag, you will get a scalar for v. You are then plotting a single point.
To see this point, use
%% PLOT
if lag > 1
t = 0:lag;
plot(lag,v,'o')
xlabel('Time Lag')
ylabel('AMI')
title('Average Mutual Information')
end
I suspect that you should be using a vector for lag.

Sign in to comment.

Answers (0)

Categories

Find more on Graphics Performance in Help Center and File Exchange

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!