Quería facer un gráfico sinxelo para representar un fragmento da área pechada entre unha función de densidade e o eixo horizontal.

Polo que andiven a ler, probablemente o mellor xeito sería empregar pgfplots. Podes ver un exemplo aquí, que semella moi resultón.
Mais como xa estou afeita a usar TikZ e ademáis precisaba algo sinxeliño, optei por un código que é moi doado de modificar para os distintos usos que lle podo dar a este tipo de gráficos.

Xa ves que está minimalista de todo, pero esa era a idea. Segundo o caso engadirei máis información, pero como exemplo básico de área baixo unha curva é suficiente.

\pgfmathdeclarefunction{funcionf}{1}{%
\pgfmathparse{3*#1^2/8}%
}
\def\puntoa{.5}
\def\puntob{1.75}
\def\fa{{funcionf(\puntoa)}}
\def\fb{{funcionf(\puntob)}}

\begin{tikzpicture}
\fill[fill=cyan] (\puntoa,0) — plot[domain={\puntoa}:{\puntob}] (\x,{funcionf(\x)}) — (\puntob,0) — cycle;
\draw[blue,dashed] ({\puntoa},0) node[below]{$a$} — ({\puntoa},{\fa});
\draw[blue,dashed] ({\puntob},0) node[below]{$b$} — ({\puntob},{\fb});
\draw[->] (0,0) — (3,0);
\draw[->] (0,0) — (0,2);
\draw[domain=0:2,blue,thick] plot(\x,{funcionf(\x)});
\draw[blue,fill=white] (2,{funcionf(2)}) circle (1pt);
%\draw[blue,fill=white] (0,{funcionf(0)}) circle (1pt);
\draw[blue,fill=blue] (2,0) circle (1pt);
\draw[domain=2:3,blue,thick] plot(\x,0);
\end{tikzpicture}

Como quería facelo o máis xenérico posible, o primeiro que fixe foi declarar unha función sinxeliña, que pode modificarse segundo a ocasión. Por exemplo, por unha función de densidade.
Tamén definín os puntos entre os que se coloreará a área.

No debuxo primeiro fago o recheo, pois se o fas noutra orde parece superporse ás liñas.
E despois van todas as liñas, sendo a última a da propia función para que asegurarme de que nada a oculta.

Para empregar este código, ademáis de modificar os datos (a función, a, b) habería que ter en conta que podemos precisar cambiar o dominio da función así como os eixos, e que habería que facelo no entorno tikzpicture. (Creo que non compensa definilo como variable.)

Creo que para o que para uns cantos exemplos coa distribución normal esto resúltame máis que suficiente.
De todos xeitos, se queres facer uns cantos gráficos de áreas entre dous curvas creo que si que se aforraría bastante traballo pasando a pgfplots.
Cando chegue aló xa che contarei!

 

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>