如何用 tikz 绘制 $\ln(x+\sqrt{x^2-1})$

如何用 tikz 绘制 $\ln(x+\sqrt{x^2-1})$

我试过了,但是没用

\def\Xmin{-2} \def\Xmax{2} 
\def\Ymin{-2} \def\Ymax{2} 
\def\Xunit{1.5cm} \def\Yunit{1.5cm} 
\def\Xleg{\small \sffamily $x$} % légende en abscisse 
\def\Yleg{\small \sffamily $y$} % légende en ordonnées 
\begin{tikzpicture}[x=\Xunit,y=\Yunit] 
\draw[>= latex,->,thick](\Xmin,1)--(\Xmax,1); 
\draw[>= latex,->,thick](1,\Ymin)--(1,\Ymax); 
\draw [domain=\Xmin:\Xmax,thick,red] plot (\x,{(ln(\x+(sqrt{((\x)^2}-1)))});
\end{tikzpicture}

答案1

不要手动完成 LaTeX 可以为你做的事情,使用pgfplots它来添加更好的绘图功能,包括自动轴

请注意,没有pgfplots 可能,但它没有保存内置检查。例如,在建议的域 [-2,2] 中,函数x+sqrt{x^2-1}切入未定义的负数ln。我们会得到错误

! Package PGF Math Error: I cannot calculate the logarithm of -0.26794

但是pfdplots有内置检查,所以事情不会爆炸,所以这里给它的范围[-2,2]是可以工作的,pgfplots只是不会在受影响的区域绘制任何东西。

您可能需要手动添加ymin选项ymaxaxis就像我所做的xmin那样。

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    unbounded coords=jump,
    domain=-2:2,
    xmin=-2,
    xmax=2,
    ]
    \addplot[red,smooth] {ln(\x+(sqrt((\x)^2-1)))};
  \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述


这是一个展示原始函数和内部函数行为的示例。

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    unbounded coords=jump,
    domain=-2:2,
    axis lines=middle,
    legend style={at={(-0.015,0.95)},anchor=north west,cells={anchor=west}},
    ]
    \addplot[red,smooth,samples=1001] {ln(\x+(sqrt((\x)^2-1)))};
    \addlegendentry{$\ln(x+\sqrt{x^2-1})$}
    \addplot[blue,smooth,samples=1001] {x+sqrt((\x)^2-1)};
    \addlegendentry{$x+\sqrt{x^2-1}$}
  \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容