try [h!] first but else you can do it the ugly way.
LateX is a bit hard in placing images with such constraints as it manages placing itself. What I usually do if I want a figure right in that spot is do something like|:
text in front of image here
\newpage
\figure1
\figure2
text after images here
I know it may not be the correct way to do it but it works like a charm :).
//edit
You can do the same if you want a little text at top of the page but then just use /clearpage. Of course you can also scale them a bit smaller so it does not happen anymore. Maybe the non-seen whitespace is a bit larger than you suspect, I always try to scale down my image until they do appear on the same page, just to know for sure there is not like 1% overlap only making all of this not needed.
If you want them both on the same page and they'll both take up basically the whole page, then the best idea is to tell LaTeX to put them both on a page of their own!
\begin{figure}[p]
It would probably be against sound typographic principles (e.g., ugly) to have two figures on a page with only a few lines of text above or below them.
By the way, the reason that [!h] works is because it's telling LaTeX to override its usual restrictions on how much space should be devoted to floats on a page with text. As implied above, there's a reason the restrictions are there. Which isn't to say they can be loosened somewhat; see the FAQ on doing that.
I had this problem while trying to mix figures and text. What worked for me was the 'H' option without the '!' option.
\begin{figure}[H]
'H' tries to forces the figure to be exactly where you put it in the code.
This requires you include
\usepackage{float}
Sometimes we want to put only one caption for two or three related images, and then again, we have two or three associated charts with one caption (for some journals, this style is necessary. In this case, subfloat or other similar environments does not help since they only allow one caption per subfloat, not a cation for all subfloats like the following:
|------| |------| |------|
|image1| |image2| |image3|
|______| |______| |______|
Figure 1. cation for all of the
subfloats
|------| |------| |------|
|image1| |image2| |image3|
|______| |______| |______|
Figure 2. cation for all of the
subfloats
content of the article, content of the article
content of the article content of the article
To produce such a style, I used the following snippet: