Hallo zusammen, ich versuche gerade mit tikz eine Parabel zu zeichnen und die Bereiche, wo die Parabel oberhalb der x-Achse verläuft einzufärben. Open in writeLaTeX
\documentclass{article} \usepackage[utf8]{inputenc} \usepackage{amsmath} \usepackage{tikz} \begin{document} \begin{figure}[ht!] \centering \begin{tikzpicture}[scale=1] \shade[top color=green!80,bottom color=green!80] (-4,0) parabola (-5.34057,8.5) |- (-4,0); %\shade[fill{rgb:red,2;green,2;yellow,1}] %(-3,0) parabola bend (-0.5,-6.25) (2,0) |- (2,0); \draw[style=help lines] (-6.5,-7.5) grid (2.5,8.5); \draw[->] (-6.5,0) -- (2.5,0) node[right] {$x$}; \draw[->] (0,-8) -- (0,9); \draw (-4,-0.5) node[left,black]{-4}; \draw (1,-0.5) node[right,black]{1}; \draw (-5.34057,8.5) parabola bend (-1.5,-6.25) (2.34057,8.5) node[below right] {$x^2+3x-4$}; \end{tikzpicture} \caption{Positive Bereiche von $f$} \end{figure} \end{document} Orientiert habe ich mich an diesem Beispiel. Allerdings fängt der gefärbte Bereich in dem Beispiel am Scheitelpunkt an, bei mir sollte der erst an der Nullstelle ansetzen. Deshalb vermute ich, dass die Kombination von shade und parabola nicht so ganz funktioniert bzw. tikz dann die Nullstelle direkt auch zum Scheitelpunkt macht. Gibt es da einen anderen Befehl für oder kann man das noch auf ganz andere Art machen? gefragt 13 Feb '14, 12:05 Qwertzuiopü |
UpdateAb Version 1.10 von Open in writeLaTeX
\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} Ursprüngliche Antwort: Vielleicht ist es einfacher dafür Open in writeLaTeX
\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} beantwortet 13 Feb '14, 12:57 esdd |
Für solche Aufgaben lohnt sich auch immer ein Blick auf »tkz-fct«. Die Syntax für die Funktion selbst ist etwas speziell. Dafür ist die Einfärbung der gewünschten Flächen leicht zu bewerkstelligen. Open in writeLaTeX
\documentclass[11pt]{article} \usepackage[T1]{fontenc} \usepackage{tkz-fct} \begin{document} \begin{tikzpicture} \tkzInit[xmin=-5,xmax=2,ymin=-7,ymax=6] \tkzGrid[color=lightgray] \tkzAxeXY \tkzFct[green,domain=-5:2]{\x*\x+3*\x-4} \tkzDrawArea[color=green!50!white,domain=-5:-4] \tkzDrawArea[color=green!50!white,domain=1:2] \end{tikzpicture} \end{document} Leider ist die Anleitung des Pakets nur auf Französisch erhältlich. Man kann sich aber ganz gut an den Beispielen entlang hangeln. beantwortet 13 Feb '14, 17:14 Thorsten Erinnere ich mich falsch, oder braucht das gnuplot (und damit auch shell-escape)?
(13 Feb '14, 18:29)
cgnieder
|