pgfplots "Dimensión demasiado grande" devuelta al trazar una función racional

pgfplots "Dimensión demasiado grande" devuelta al trazar una función racional

He estado usando pgfplotspara graficar por un tiempo y recientemente me encontré con una situación en la que necesito graficar funciones racionales. La mayoría de estos han funcionado bien, pero uno me ha provocado el error "Dimensión demasiado grande". Aquí está mi código:

\documentclass{article}
\usepackage{pgfplots}

\begin{document}

  \begin{tikzpicture}
    \begin{axis}[axis lines=middle, ymax=10, ymin=-10, xlabel=$x$, ylabel=$y$]
      \addplot[only marks, scatter, scatter src=explicit, point meta=y] coordinates {
        (-4, 4)
        (-3, 5)
        (-2, 10)
        (-1, -5)
        (0, 0)
        (1, 1)
        (2, 1.429)
      };
      \addplot[smooth, domain=-10:-1.5, variable=\x, samples=301, unbounded coords=jump, variable=\x] {(5 * \x) / (2 * \x + 3)};
      \addplot[smooth, domain=-1.5:10, variable=\x, samples=301, unbounded coords=jump, variable=\x] {(5 * \x) / (2 * \x + 3)};
      \addplot[dashed, domain=-10:10] {5 / 2};
      \draw[dashed] ({axis cs:-1.5,0}|-{rel axis cs:0,0}) -- ({axis cs:-1.5,0}|-{rel axis cs:0,1});
    \end{axis}
  \end{tikzpicture}

\end{document}

Esto se puede evitar restringiendo los dominios de los gráficos segundo y tercero a -3:-1.5y 1.5:3, respectivamente. No veo cómo podría obtener un número demasiado grande y solo puedo imaginar que esto sea un problema de desbordamiento decimal. ¿Como puedo solucionar este problema?

Respuesta1

unbounded coordsLa clave funciona solo si obtienes una infcoordenada precisa. Sin embargo, si la coordenada se vuelve demasiado grande pero no, infintenta procesar ese número y aparece este error. Para evitar este tipo de problemas utilice restrict <x,y> to domainla clave

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}

\begin{document}
  \begin{tikzpicture}
    \begin{axis}[axis lines=middle, ymax=10, ymin=-10, xlabel=$x$, ylabel=$y$,restrict y to domain=-10:10 ]
      \addplot[only marks, scatter, scatter src=explicit, point meta=y] coordinates {
        (-4, 4)
        (-3, 5)
        (-2, 10)
        (-1, -5)
        (0, 0)
        (1, 1)
        (2, 1.429)
      };
      \addplot[domain=-10:-1.5,samples=301, unbounded coords=discard] {((5*x)/(2*x + 3))};
      \addplot[domain=-1.5:10, samples=301, unbounded coords=discard] {((5*x)/(2*x + 3))};
      \addplot[dashed, domain=-10:10] {5 / 2};
      \draw[dashed] ({axis cs:-1.5,0}|-{rel axis cs:0,0}) -- ({axis cs:-1.5,0}|-{rel axis cs:0,1});
    \end{axis}
  \end{tikzpicture}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada