Área de sombreamento entre a tangente normal e o eixo x

Área de sombreamento entre a tangente normal e o eixo x

Fiquei me perguntando se poderia obter ajuda para preencher a área delimitada entre a tangente normal e o eixo x (que é o triângulo). Eu li bastante material e tópicos, mas não consigo descobrir como fazer isso com a maneira como configurei meus gráficos atualmente.

\documentclass{article}
\usepackage{tikz}
\begin{document}

\begin{center}
\begin{tikzpicture}
    \draw (3,{0.06*exp(3)+1}) circle[radius=2pt] node[right] {$(a,f(a))$};
    \fill (3,{0.06*exp(3)+1}) circle[radius=2pt];
    \draw [<->] (-1,0) -- (7,0) node[right]{$x$};
    \draw [<->] (0,-1) -- (0,5)node[above]{$y$};
    \draw[domain=-1:4] [<->] plot (\x,{0.06*exp(\x)+1}) node[right] {$y = f(x)$};
    \draw[domain=0.5:4] [<->] plot (\x, {0.06*exp(3)*(\x-3)+0.06*exp(3)+1}) node[right] {$\ell_T$};

    \draw[domain=2:6.5] [<->] plot (\x, {-1/(0.06*exp(3))*(\x-3)+0.06*exp(3)+1}) node[right] {$\ell_N$};;
\end{tikzpicture}
\end{center} 

\end{document}

Isto é o que parece até agora.

insira a descrição da imagem aqui

Responder1

Você pode usar a intersectionsbiblioteca (e também deixar o TikZ calcule a posição de (a,f(a)) sozinho):

\documentclass[tikz, border=10pt]{standalone}
\usetikzlibrary{intersections, backgrounds}
 
\begin{document}
\begin{tikzpicture}

    \draw[<->, name path=x-axis] (-1,0) -- (7,0) 
        node[right]{$x$};
    \draw[<->] (0,-1) -- (0,5) 
        node[above]{$y$};
    \draw[domain=-1:4, <->] 
        plot (\x,{0.06*exp(\x)+1}) 
        node[right] {$y = f(x)$};
    \draw[domain=0.5:4, <->, name path=tangent] 
        plot (\x, {0.06*exp(3)*(\x-3)+0.06*exp(3)+1}) 
        node[right] {$\ell_T$};
    \draw[domain=2:6.5, <->, name path=normal] 
        plot (\x, {-1/(0.06*exp(3))*(\x-3)+0.06*exp(3)+1}) 
        node[right] {$\ell_N$};

    \path[name intersections={of=normal and tangent}]
        (intersection-1) coordinate (a);
    \path[name intersections={of=normal and x-axis}]
        (intersection-1) coordinate (b);
    \path[name intersections={of=tangent and x-axis}]
        (intersection-1) coordinate (c);
        
    \filldraw (a) circle[radius=2pt] 
        node[right] {$(a,f(a))$};

    \begin{scope}[on background layer]
        \fill[red!10] (a) -- (b) -- (c) -- cycle;
    \end{scope}
    
\end{tikzpicture}
\end{document}

Você também pode fazer uso dofillbetweenbibliotecaque vem com o pgfplotspacote (talvez um pouco exagerado aqui, mas útil em configurações mais complicadas onde um limite é um gráfico, por exemplo):

\documentclass[border=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\usetikzlibrary{fillbetween, backgrounds}
 
\begin{document}
\begin{tikzpicture}

    \draw (3,{0.06*exp(3)+1}) circle[radius=2pt] 
        node[right] {$(a,f(a))$};
    \fill (3,{0.06*exp(3)+1}) circle[radius=2pt];
    \draw[<->, name path=x-axis] (-1,0) -- (7,0) 
        node[right]{$x$};
    \draw[<->] (0,-1) -- (0,5) 
        node[above]{$y$};
    \draw[domain=-1:4, <->] 
        plot (\x,{0.06*exp(\x)+1}) 
        node[right] {$y = f(x)$};
    \draw[domain=0.5:4, <->, name path=tangent] 
        plot (\x, {0.06*exp(3)*(\x-3)+0.06*exp(3)+1}) 
        node[right] {$\ell_T$};
    \draw[domain=2:6.5, <->, name path=normal] 
        plot (\x, {-1/(0.06*exp(3))*(\x-3)+0.06*exp(3)+1}) 
        node[right] {$\ell_N$};

    \path[
        name path=temp,
        intersection segments={
            of=normal and tangent,
            sequence={L2 -- R1}
        }
    ] -- cycle;

    \begin{scope}[on background layer]
        \fill[
            red!10,
            intersection segments={
                of=temp and x-axis,
                sequence={L1 -- R2}
            }
        ] -- cycle;
    \end{scope}
    
\end{tikzpicture}
\end{document}

Ambos resultam na mesma saída:

insira a descrição da imagem aqui

informação relacionada