如何绘制双曲函数

如何绘制双曲函数

我怎样才能在乳胶中绘制双曲函数?我使用遵循的代码,但它是错误的,我不知道为什么?

\begin{figure}[H]‎
‎\begin{center}‎
‎\scalebox{.7}{‎
‎\begin{tikzpicture}
  \begin{axis}[domain=-5:5, samples=500, axis lines*=middle, ytick={1.57,-1.57},,xtick={10} yticklabels={‎$‎\pi‎$/2‎,-$\pi$/2}]
    \addplot[color=black, very thick‎]  {sinh(x)/180*pi};‎
\node at (2,1.5) {\footnotesize $y=‎\sinh ‎(x)‎$};‎
      \end{axis}
‎\end{tikzpicture}‎ }
‎\end{center}‎
‎\end{figure‏}‎‎‎‎

与 cosh、tanh、coth、csch、sech 相同。

答案1

当我将您的代码片段完成为可编译的 MWE 时,我收到第一个错误: Package pgfkeys Error: I do not know the key '/tikz/very thick‎' and I am going to ignore it. Perhaps you misspelled it.

这个错误乍一看很奇怪,因为这个键tikz/very thick确实存在。但是,如果你仔细观察字符串的代码点,你会发现,后面有一个不可见的字符thick,即 U+200E“LTR 标记”:

/    t    i    k    z    /    v    e    r    y         t    h    i    c    k    ‎
002f 0074 0069 006b 007a 002f 0076 0065 0072 0079 0020 0074 0068 0069 0063 006b 200e

事实上,您的代码片段中还有更多此字符的实例。当 U+200E 被替换为 • 时,您的代码片段如下所示:

\begin{figure}[H]•
•\begin{center}•
•\scalebox{.7}{•
•\begin{tikzpicture}
  \begin{axis}[domain=-5:5, samples=500, axis lines*=middle, ytick={1.57,-1.57},,xtick={10} yticklabels={•$•\pi•$/2•,-$\pi$/2}]
    \addplot[color=black, very thick•]  {sinh(x)/180*pi};‎
\node at (2,1.5) {\footnotesize $y=•\sinh •(x)•$};•
      \end{axis}
•\end{tikzpicture}• }
•\end{center}•
•\end{figure•}••••

在大多数位置,这其实并不重要。但至少very thick•\end{figure•}导致解析错误。所以,首先要做的应该是删除所有这些不可见的字符。

xtick={10}现在,您已经清理了代码,但仍然会收到错误,因为两个选项和之间缺少一个逗号yticklabels={$\pi$/2,-$\pi$/2}

修复此问题后,您将获得以下无错误的输出:

在此处输入图片描述

使用正确格式的 MWE 如下:

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{float}

\begin{document}

\begin{figure}[H]
\begin{center}
\scalebox{.7}{
\begin{tikzpicture}
  \begin{axis}[domain=-5:5, samples=500, axis lines*=middle, ytick={1.57,-1.57}, xtick={10}, yticklabels={$\pi$/2,-$\pi$/2}]
    \addplot[color=black, very thick] {sinh(x)/180*pi};
    \node at (2,1.5) {\footnotesize $y=\sinh(x)$};
  \end{axis}
\end{tikzpicture}
}
\end{center}
\end{figure}

\end{document}

我不知道您是否真的需要将图表放在 中\begin{figure}[H]。也许将其原样放入文档中也足够了。另外,我可能不会使用\scalebox。但这当然由您决定。

答案2

在此处输入图片描述

\documentclass[12pt]{article}
\usepackage{pgfplots}
\usetikzlibrary{calc}
\usepackage{amsmath}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    xmin=-3.5, xmax=3.5,
    ymin=-2, ymax=2,
    axis lines=center,
    axis on top=true,
    domain=-5.0:5.0,
    ylabel=$y$,
    xlabel=$x$,
    ]
\addplot [mark=none,draw=red,ultra thick,samples=400] {sinh(\x)};
\node [right, red] at (axis cs: 1.5,.8) {$y = \sinh x$};
\draw [blue, dotted, thick] (axis cs:-2,-3.0)-- (axis cs:-2,0);
\draw [blue, dotted, thick] (axis cs:+2,+3.0)-- (axis cs:+2,0);
\end{axis}
\end{tikzpicture}
\end{document}

\documentclass[12pt]{article}
\usepackage{pgfplots}
\usetikzlibrary{calc}
\usepackage{amsmath}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    xmin=-3.5, xmax=3.5,
    ymin=-.5, ymax=5,
    axis lines=center,
    axis on top=true,
    domain=-5.0:5.0,
    ylabel=$y$,
    xlabel=$x$,
    ]
\addplot [mark=none,draw=red,ultra thick,samples=400] {cosh(\x)};
\node [right, red] at (axis cs: .5,.8) {$y = \cosh x$};
\end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述


\documentclass[12pt]{article}
\usepackage{pgfplots}
\usetikzlibrary{calc}
\usepackage{amsmath}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    xmin=-3.5, xmax=3.5,
    ymin=-1.5, ymax=1.5,
    axis lines=center,
    axis on top=true,
    domain=-5.0:5.0,
    ylabel=$y$,
    xlabel=$x$,
    ]
\addplot [mark=none,draw=red,ultra thick,samples=400] {tanh(\x)};
\node [right, red] at (axis cs: .8,.5) {$y = \tanh x$};
\end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容