So füllen Sie ein Rechteck mit zwei Ecken mit der Funktion

So füllen Sie ein Rechteck mit zwei Ecken mit der Funktion

Ich möchte in der Lage sein, dasselbe in der folgenden Abbildung für jede beliebige Funktion anzuwenden:

Bildbeschreibung hier eingeben

Im Moment sieht mein Code so aus (eine bearbeitete Version eines Posts hier in Tex.sx): Der nur den Bereich unterhalb der Kurve vollständig ausfüllt!

\documentclass[11pt,bezier]{article}
\usepackage{xstring}
\usepackage{collcell}
\usepackage{pgfplots}
\usetikzlibrary{patterns}
\begin{document}
\begin{figure}[ht!]
    \centering
    \begin{tikzpicture}
        \begin{axis}[xmin=-1,xmax=9,xlabel={Y},ymin=0,ymax=10] 
        \addplot[color=black,domain=-1:9,samples=100]
            {(-(x-3)^2+(x-3)^4-(x-1)^3+4)/40+5};
        \addplot[color=black,fill=lime,  domain=5.8:7,samples=100]
            {(-(x-3)^2+(x-3)^4-(x-1)^3+4)/40+5} \closedcycle;
        \end{axis}
    \end{tikzpicture}
    \end{figure}
\end{document}

Antwort1

Sie können relative Koordinaten und --cycle(anstelle von \closedcycle) verwenden, um Folgendes zu erhalten:

\documentclass[border=2pt]{standalone}
\usepackage{pgfplots}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[xmin=-1,xmax=9,xlabel={Y},ymin=0,ymax=10] 
        \addplot[color=black,domain=-1:9,samples=100] {(-(x-3)^2+(x-3)^4-(x-1)^3+4)/40+5};
        \addplot[color=black,fill=lime,  domain=5.8:7,samples=100] 
            {(-(x-3)^2+(x-3)^4-(x-1)^3+4)/40+5} -- +(axis direction cs:-1.2,0)--cycle;
        \addplot[color=black,fill=cyan,  domain=7:5.8,samples=100] 
            {(-(x-3)^2+(x-3)^4-(x-1)^3+4)/40+5} -- +(axis direction cs:1.2,0)--cycle;
        \end{axis}
    \end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen