¿Por qué pgfplots traza funciones solo hasta x = 5 e y = 5, pero no más?
\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
%%%<
\usepackage[active,tightpage]{preview}
\PreviewEnvironment{tikzpicture}
\setlength\PreviewBorder{5pt}
%%%>
\begin{document}
\begin{tikzpicture}
\begin{axis}[samples=100,ymin=0,ymax=10,xmin=0,xmax=20]
\addplot [thick] plot (\x, {1/(1 + exp(-0.6*(\x - 12)))});
\addplot plot (\x, {\x});
\end{axis}
\end{tikzpicture}
\end{document}
Respuesta1
Hay muchas opciones de "dominio" en pgfplots
. El que estás preguntando es simplemente domain
, que especifica qué valores de x
(no necesitas la barra invertida si estás usando pgfplots
) se utilizan en el trazado; de forma predeterminada, tenemos domain = -5:5
, que es lo que aparentemente el autor considera razonable para gráficos típicos. Existe una correspondiente y domain
para funciones de dos variables.
Este dominio es bastante diferente a los límites establecidos por xmin
y xmax
. Si bien domain
se configura por gráfico, estas claves se configuran por eje y solo limitan el valor real.dibujoa estos límites. Hay correspondientes ymin
y ymax
. Estos se calcularán automáticamente pgfplots
si no se proporcionan, pero para obtener una imagen realmente pulida es necesario configurarlos usted mismo. Tenga en cuenta que y domain
lo hacenotiene algo que ver con ymin
y ymax
en una gráfica de funciones de una variable, porque determina las entradas de la variable inexistente y
. En cambio, ymin
y ymax
, si se determinaran automáticamente, se calcularían a partir de los valores generados por las funciones trazadas en el domain
.
¡Hay mas! Mis favoritos son restrict x to domain
y restrict y to domain
, que son filtros con la misma sintaxis de entrada que domain
. Éstos no determinan qué números se utilizan en las variables; determinan qué valores se utilizan en la trama. Son de enorme ayuda con funciones paramétricas o incontrolables; es decir \addplot {1/x};
, con el valor predeterminado domain = -5:5
, producirá una asíntota bastante espantosa y x = 0
(con el valor predeterminado ymin
y ymax
) una vista muy distorsionada de los ejes. Pero estableciendorestrict y to domain = -5:5
este gráfico simplemente eliminará los valores grandes, eliminando la asíntota y también escalando la imagen nuevamente a un cuadrado proporcional.
O, alternativamente, un gráfico paramétrico como \addplot ({exp(x)},{exp(-x)});
(una forma divertida de dibujar lo mismo solo en el primer cuadrante), que es difícil de ajustar directamente debido a la conexión logarítmica entre los valores del gráfico y los valores de la variable. Para esto, tanto el tamaño predeterminado domain
como el tamaño de eje predeterminado son inapropiados; Normalmente lo dejo domain
como está (lo que da números que son demasiado grandes en ambas coordenadas) y luego configuro restrict x to domain
yrestrict y to domain
en consecuencia, recorte bien la imagen. Esto no quiere decir que sea una buena idea sercompletamenteinconsciente dedomain
, desde esos puntossoncalculado... simplemente no usado.
Estas claves de filtro son diferentes de las claves mínima y máxima porque en realidad ignoran los valores filtrados, en lugar de simplemente eliminarlos de la imagen. Esto es esencial si estos valores son mayores de lo que TeX es capaz de calcular.
Finalmente, existen samples
o sample at
, que existe de forma mutuamente excluyente condomain
y decir cuántos, o inclusoexactamenteen qué valores de x
para calcular los valores. Esta puede ser una alternativa a las restrict to domain
claves, si elige las muestras con cuidado para evitar entradas excepcionales. También son útiles para ajustar la trama en torno a lugares que varían rápidamente en el gráfico, que de otro modo se verían bastante entrecortados. Estos también interactúan con las restrict to domain
teclas en el sentido de que con, digamos,
\addplot[
domain = -5:5,
samples = 11,
restrict x to domain = -1:1,
restrict y to domain = -1:1
] ({exp(x)},{exp(-x)});
Se evaluarán exactamente 11 puntos, es decir, ({exp(-5)},{exp(5)})
hasta , pero solo se trazarán ({exp(5)},{exp(-5)})
aquellos con ambas coordenadas en el intervalo . [-1,1]
Desafortunadamente, el único punto con esa propiedad es ({exp(0)},{exp(0)}) = (1,1)
, por lo que su parcela estará bastante vacía. ¡Los puntos no trazados ni siquiera se utilizan para anclar curvas de interpolación! Entonces las claves de filtro no son una panacea.
Mis fotos tienden a fijarsetodode estas claves, ya que cada una afecta al dibujo de manera diferente.