MATLAB Central Discussions - Join the conversation!
Main Content

Results for


We reached the 100 animations milestone in less than 3 days! We are thrilled to see so many creative entries and talented members learning from each other.
Note that this contest is not just for experts. People with all skill levels can participate, improve their MATLAB skills, and have fun!
We have created new resources and tips for you to get started.
  1. Contest introductory video. The 3-minute video provides you with a quick introduction to how the contest works and how to create a simple animation.
  2. Animations blog post. The post demonstrates some coding techniques that can make your animations easier.
  3. AI Chat Playground. This is a new community app we just released. You can leverage the Generative AI tool to write initial draft MATLAB code or modify existing one.
  4. Get ideas from previous Mini Hack contests. There is a large gallery of amazing images, which provide you with ideas and code to start with.
  5. Remix is highly encouraged. Learning from others is the most effective way to learn. Make some SMALL changes and see what it would look like.
Check out our 100th animation by Tim. Isn't it amazing?
We look forward to seeing more of you joining us and having more fun!
Seeing a colleague make this mistake (one I've had to fix multiple times in other's work too) makes me want to ask the community: would you like the awgn() function/blocks to give the option for creating a SNR at the bandwidth of the signal? Your typical flow is something like this:
  • Create a signal, usually at some nominal upsampling factor (e.g., 4) such that it's now nicely over sampled, especially if you're using a RRC or similar pulse shaping filter.
  • Potentially add a frequency offset (which might make the sample frequency even higher)
  • Add AWGN channel model for a desired SNR
  • Put this into your detector/receiver model
The problem is, when someone says, "I'm detecting XYZ at foo SNR," it should not magically improve as a function of the oversample. The problem isn't that awgn() generates white noise, that's what it's supposed to do and the typical receiver has noise across the entire band. The problem is that SNR is most properly defined as the signal power over the noise power spectral density times the signal's noise equivalent bandwidth. Now I looked and there's no handy function for computing NEBW for an input signal (there's just a function for assessing analysis windows). In practice it can get a bit tricky. The occupied bandwidth or HPBW are often close enough to the NEBW, we're usually not haggling over hundredths of a dB. So, in my not so humble opinion, the "measured" flag for awgn() should give an option for bandwidth matching or at least document the behavior better in the help page. All too often I'm seeing 3-6 (or worse) dB errors because people aren't taking the signal's bandwidth into account.
Unlike last year's contest, there are some new technologies this year that might offer some advantages. Namely generative AI's like ChatGPT, Bard, etc. Not to be excluded, MathWorks just launched the AI Chat Playground :)
The MATLAB AI Chat Playground is open to everyone!
Check it out here on the community: https://www.mathworks.com/matlabcentral/playground
MATLAB AI Chat Playground Screenshot
I just published a blog post announcing the release.
The 2023 community contest - MATLAB Flipbook Mini Hack - starts today on Nov. 6th!
Participants across all skill levels are welcome to join! You can participate by creating a new animation or remixing an existing one with up to 2,000 characters of MATLAB code.
Contest Tips:
  1. Before you start, we highly recommend you check out the two examples - Bouncing and Spinning - to understand how the contest works.
  2. Share your thoughts, ask questions, or connect with others in our contest discussion channel.
Note that the first week (Nov. 6th, 2023, ~ Nov. 12th, 2023) is for creating entries only. Voting does not begin until the second week.
We look forward to seeing your creative work. Let the contest begin!
You are invited to join our 2023 community contest – MATLAB Flipbook Mini Hack! This year’s contest revolves around creating interesting animations using MATLAB.
Whether you are a seasoned MATLAB user or just getting started, this contest offers a fantastic opportunity to showcase your skills, learn from others, and engage with the vibrant MATLAB Central community.
Timeframe
This contest runs for 4 weeks from Nov. 6th to Dec. 3rd.
How to play
  • Create a new animation or remix an existing one with up to 2,000 characters of code.
  • Simply vote on the animations you love!
Prizes
You will have opportunities to win compelling prizes, including Amazon gift cards, MathWorks T-shirts, and virtual badges. We will give out both weekly prizes and grand prizes.
Check out the gallery and vote on the animations you like.
The MATLAB Central Community team
Image Analyst
Image Analyst
Last activity on 31 Oct 2023

Just in time for Halloween.
I rarely/never save .fig files
47%
Continue working on it later
16%
Archive for future reference
23%
Share within my organization
10%
Share outside my organization
2%
Other (please leave a comment)
2%
2097 votes
Julian
Julian
Last activity on 5 Feb 2024

I know the latest version of MATLAB R2023b has this feature already, put it should be added to R2023a as well because of its simplicity and convenience.
Basically, I want to make a bar graph that lets me name each column in a basic bar graph:
y=[100 99 100 200 200 300 500 800 1000];
x=["0-4" "5-17" "18-29" "30-39" "40-49" "50-64" "65-74" "75-84" "85+"];
bar(x,y)
However, in R2023a, this isn't a feature. I think it should be added because it helps to present data and ideas more clearly and professionally, which is the purpose of a graph to begin with.
Matt J
Matt J
Last activity on 1 Mar 2024

Would it be a good thing to have implicit expansion enabled for cat(), horzcat(), vertcat()? There are often situations where I would like to be able to do things like this:
x=[10;20;30;40];
y=[11;12;13;14];
z=cat(3, 0,1,2);
C=[x,y,z]
with the result,
C(:,:,1) =
10 11 0
20 12 0
30 13 0
40 14 0
C(:,:,2) =
10 11 1
20 12 1
30 13 1
40 14 1
C(:,:,3) =
10 11 2
20 12 2
30 13 2
40 14 2
Image Analyst
Image Analyst
Last activity on 10 Nov 2023

Wait for Walter, the rest of us are mere users.
Image Analyst
Image Analyst
Last activity on 16 Oct 2023

Image Analyst
Image Analyst
Last activity on 16 Oct 2023

MATLAB Training
Image Analyst
Image Analyst
Last activity on 16 Oct 2023

Embarassed by Walter Roberson
Go to top of page