How to include plot in a function?

5 views (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 2-D and 3-D Plots 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!