This is a totally normal, if annoying, developmental milestone. She is learning about gravity and physics and cause and effect. So just understand that she is not doing it to be "bad" or defiant or anything.
That's not to say it isn't totally annoying! I found that if I gave my son less food at a time he wouldn't throw it. If he had a huge pile of what looked like unlimited food to him, most of it would go on the floor. If he got half a dozen puffs or peas or whatever at a time, he ate them instead and only started throwing once he was done. So I just kept putting a few bites at a time in front of him and he did much better.
When he did do it, I didn't really react and just took the food away. I could usually tell if he was actually done or not. If I knew he still needed to eat I would give it back in a minute.
If it was something dry and easy to clean, I occasionally let him get in a few throws. :)