You're supposed to label her feelings. So if she's upset/hungry/tired/angry etc you say to her "you're upset/hungry/tired/angry" etc. Do this every time - then she'll be able to make the connection and have a way of telling you. Ok this won't resolve it over night but it'll make her feel understood.
I also think it's developmental. Sometimes they have feelings they simply cannot begin to contain, let alone identify, control or direct. As they get older they learn more about managing their emotions and also they get angry a bit less (eg they know that although I said no to curry for breakfast I will probably make it for dinner, and it's really not worth losing the plot about it!).
Deffo an emotional release with my dd who's now 4 and is still (rarely) capable of losing it.
In addition to giving her words for her feelings and helping her to feel accepted, some of it is just time as kids develop ways of managing their strong feelings as they grow and develop. There'll also be less periods in the day when she's tired as she gets older etc.
Generally, asking questions ie 'are you angry?' isn't helpful whilst statements like 'sounds like you're really angry' are better.
Penelope Leach describes tantrums as a sort of emotional short fuse which the child just can't control at the moment. It helped me to see dd's tantrums like this (especially the LOOOOOOOOOOONG ones) as I realised that I just needed to let her work it through rather than 'do' anything.