What does this error for hist mean?

1 vue (au cours des 30 derniers jours)
Douglas Brenner
Douglas Brenner le 5 Nov 2016
Attempt to execute SCRIPT hist as a function:
/Users/douglasbrenner/Documents/MATLAB/hist.m
Error in extractedge (line 33)
hist(Mean)

Réponse acceptée

Image Analyst
Image Analyst le 5 Nov 2016
In extractedge.m you're calling
something = hist(mean);
However there are two very bad things with that.
First, you have a script called hist.m and it's trying to call hist.m and pass it mean, but hist.m is a script, not a function so it cannot take any arguments.
Second, you're either passing the built-in mean() function to your script (bad, unless your m-file is a function that is expecting a function instead of a variable), OR you created a variable called mean, which is very very bad since that would blow away the built-in mean function.
TO FIX:
Rename your hist.m to something like hist_test.m. And in extractedge.m do something like
thisMean = mean(someVector);
hist_test;
Now if you want to pass thisMean to hist_test.m, then you need to make hist_test.m a function instead of a script and you can do this by adding a function line with the name of the m-file. So the first line would be this:
function hist_test(theMean)
% Then somehow do something with theMean in the function.
  1 commentaire
Douglas Brenner
Douglas Brenner le 5 Nov 2016
Thanks. I didn't accept my own answer.

Connectez-vous pour commenter.

Plus de réponses (1)

Douglas Brenner
Douglas Brenner le 5 Nov 2016
Got it. hist.m is now myhist.m
  1 commentaire
Image Analyst
Image Analyst le 5 Nov 2016
That wasn't the only problem. See my answer.

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by