What matlab easter eggs do you know?

629 views (last 30 days)
Paulo Silva
Paulo Silva on 25 Feb 2011
Answered: Petros Bogiatzis on 7 Feb 2023
Please post the easter eggs that you have found so far if they aren't already posted by someone else.
Let's try to make a good Matlab easter egg list because it seems that there isn't one.
What should be posted:
  • Unexpected but intentional behaviour
  • Special things that the programmers left for us to discover
  • Extra code inside a function that can be used for other purposes
  • Hidden pictures and audio clips
What shouldn't be posted:
  • Repeated Easter Eggs, if someone already posted it please don't repeat
  • Bugs in functions that cause trouble and might be fixed in later versions
  • Matlab games that come with the program unless they aren't mentioned in the documentation (the games are in the other demos, try the xpbombs and fifteen, you can even see the code for both games)

Sign in to comment.

Answers (9)

Kenneth Eaton
Kenneth Eaton on 25 Feb 2011
Edited: Kenneth Eaton on 11 Dec 2017
As Steve discussed in one of his blog posts, the default image in MATLAB is actually a steganographic image:
Just looks like an upside-down little boy, right? Well, if you rotate the 53-bits of the double precision fraction component so that each becomes the highest valued bit, you can easily see the hidden images:
Here's how I made the above image:
defImage = pow2(get(0,'DefaultImageCData'),47);
imgCell = repmat({zeros(size(defImage))},8,7);
for shift = 0:52
imgCell{shift+1} = bitrotate(defImage,shift);
allImages = cell2mat(imgCell.');
imshow(allImages,[min(allImages(:)) max(allImages(:))]);
NOTE: bitrotate is a version of the built-in bitshift that I wrote to perform a circular shift of the bit pattern instead of discarding bits that overflow. I'll be placing bitrotate on the FEX soon, but for now you can just replace it with bitshift in the above code.
Andrew Newell
Andrew Newell on 25 Feb 2011
What - no image of Satan?

Sign in to comment.

Paulo Silva
Paulo Silva on 25 Feb 2011
The spy function without arguments makes a cool figure (my current avatar).
The why function says random things.
Matlab comes with a great sound clip for those moments when you find a solution for a huge problem
load handel
The pie function (matlab 2008b and maybe later versions) doesn't allow to place the labels in a specific place but in the function code there's a variable that allows the text to be inside the pie and you might also set the distance from the center of the pie, here's a little hack that I did to pie
Image Analyst
Image Analyst on 26 Jan 2012
Paulo, your avatar is no longer the "spy" image that pops up - it's Sean's dog (I think). Sean's lalala function is not in R2011b - maybe it will come out in R2012a.

Sign in to comment.

Petros Bogiatzis
Petros Bogiatzis on 7 Feb 2023
Not sure if this is known,

Andrew Newell
Andrew Newell on 25 Feb 2011
This site and this site have several Easter eggs, but most don't work on 2010b. Just these work for me:
But are these really Easter eggs or just demos?
Sean de Wolski
Sean de Wolski on 25 Feb 2011
Paulo, search Steve Eddin's Blog for 'image function' (or similar). There is quite a lot to learn there!

Sign in to comment.

Leo Borcherding
Leo Borcherding on 28 Aug 2019
  1 Comment
Leo Borcherding
Leo Borcherding on 28 Aug 2019
This will pull up a Conways Game of Life Cellular simulation

Sign in to comment.

Paulo Silva
Paulo Silva on 5 Mar 2011
Today I found that these functions:
From the Control System Toolbox work without any arguments, there's a sort of demo that they make, very nice, I was using them for years without noticing, nice surprise, wonder why the tf function doesn't also have the same behaviour

Saurav Kumar
Saurav Kumar on 25 Apr 2011
surf(membrane) gives mathworks logo
imagesc(cool) gives the cool colors

Image Analyst
Image Analyst on 26 Jan 2012
Not sure if they qualify as Easter eggs, but type these on the command line (verified on R2011b):
  1. why
  2. why are there too many input arguments?
  3. xpbombs
  4. fifteen
  5. spy (new image is probably only version R2011b or later - clearly Sean has had some influence since he joined the Mathworks staff)
  6. x=[-2:.001:2],y=(sqrt(cos(x)).*cos(200*x)+sqrt(abs(x))-0.7).*(4-x.*x).^0.01,plot(x,y);
On http://www.walkingrandomly.com/?p=2949, Cleve says " As our code base has increased, including such goodies in the MATLAB core has become problematic because of the strain it puts on rigorous automated testing. It is still possible to include them in a few “leaf” M functions, like “spy”, that other functions do not depend upon." so they will probably be fewer as time goes on.

Dennis Jaheruddin
Dennis Jaheruddin on 27 Nov 2013
Not sure if it is really an easter egg, it is a bit simpler than most others.
The description of this function surprised me:
  • eomfun
Note that it is only found in the help, not in the doc.
  1 Comment
Image Analyst
Image Analyst on 27 Nov 2013
Easter eggs come and go. It's not in release R2013a. What version did you verify it in?

Sign in to comment.


Find more on Just for fun 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!