## Update ##
Ab Version 1.10 von [`pgfplots`][2] kann man sich die Schnittpunkte mit der x-Achse gleich mit berechnen lassen:
\documentclass[margin=5mm]{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{fillbetween}
\pgfplotsset{
compat=1.10,% mit writeLaTeX bisher noch nicht möglich
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines=middle,
enlargelimits=0.05,
grid,
domain=-5.5:2.5,
]
\addplot[name path=P,green]{x^2+3*x-4};
\addplot[name path=X,draw=none]{0};
% Füllung zwischen plots
\addplot fill between[
of=P and X,
split, % Segmente berechnen lassen, Zählung beginnt bei 0 (also gerader Zahl)
every even segment/.style= {gray,fill opacity=0.2}, % Stil für die geraden Segmente
every odd segment/.style={fill=none}, % Stil für die ungeraden Segmente
];
\end{axis}
\end{tikzpicture}
\end{document}
![alt text][1]
----------
Ursprüngliche Antwort:
Vielleicht ist es einfacher dafür [`pgfplots`][2] zu verwenden:
\documentclass[margin=5mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{
%compat=1.9,% bei Nutzung von writeLaTeX auskommentieren
flaeche/.style={draw=none,fill=gray,fill opacity=0.2}
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[axis lines=middle,enlargelimits=0.05,grid]
\newcommand*\plotfunc{x^2+3*x-4}
\addplot[flaeche,domain=-5.5:-4]{\plotfunc}\closedcycle;
\addplot[flaeche,domain=1:2.5]{\plotfunc}\closedcycle;
\addplot[green,domain=-5.5:2.5]{\plotfunc};
\end{axis}
\end{tikzpicture}
\end{document}
[1]: http://texwelt.de/wissen/upfiles/flparabast.png
[2]: http://www.ctan.org/pkg/pgfplots