节点未打印在 x 轴上

节点未打印在 x 轴上

以下代码指示 TikZ 绘制由方程描述的图形y=\frac{\sqrt{x^{2}-25}}{\sqrt{x-5}}。 (该图形看起来像y=\sqrt{x+5}。)我特别想要在 x 轴上标记两个数字-5和。 如果不指定缩放比例,y 轴会比 x 轴放大得多,图形不会像。 为了在保持宽度和高度不变的情况下对两个轴获得相同的缩放比例,我使用了可选命令。 由于函数是正函数,因此绘制的笛卡尔平面部分几乎不包含 x 轴以下的任何内容。 因此,和的标签仅部分设置。 (您必须仔细观察才能看到这两个数字的任何部分。)我如何人为地将 y 轴向下延伸一点......至少以便在图形上绘制标签和?5y=\sqrt{x+5}set axis equal-55-55

\documentclass[10pt]{amsart}
\usepackage{tikz}
\usetikzlibrary{calc,angles,positioning,intersections,quotes,decorations.markings}
\usepackage{tkz-euclide}
\usetkzobj{all}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}

\setlength{\oddsidemargin}{0.0in}
\setlength{\evensidemargin}{0.0in} \setlength{\textwidth}{6.1in}
\setlength{\topmargin}{0.0in} \setlength{\textheight}{9in}

%http://pgfplots.sourceforge.net/pgfplots.pdf

\begin{document}

\hspace*{\fill}
\begin{tikzpicture}
\begin{axis}[width=4in,axis equal image,
          xmax=26,ymax=7,
          axis lines=middle,
          restrict y to domain=-3:6.5,
          enlargelimits,
          axis line style={shorten >=-0.25cm,shorten <=-0.25cm,latex-latex},
          ticklabel style={fill=white},
          extra x ticks={-5,5},
          %extra x tick style={grid=none}
]
\pgfplotsset{ticks=none}
\addplot[domain=5:26,mark=none,samples=201] {sqrt(x + 5)} node[fill=white, below left, yshift=-3pt]{$\scriptstyle y=\frac{\sqrt{x^{2}-25}}{\sqrt{x-5}}$};
\addplot[domain=-6:5,dashed,thin,mark=none,samples=201] {sqrt(x + 5)};

\draw [densely dashed] (5,3.16227766) -- (5,0) node[below]{$5$};
\draw[fill] (-5,0) circle [radius=1.5pt] node[below]{$-5$};
\draw [fill=white] (5,3.16227766) circle [radius=1.5pt];
\end{axis}
\end{tikzpicture}
\hspace{\fill}


\end{document}

答案1

当您放置\pgfplotsset{ticks=none}之后\begin{axis},您将关闭所有刻度标记,包括extra x ticks您在axis选项中设置的刻度标记。

如果您只想在某些选定的坐标上放置刻度标记,只需设置xtick={-5, 5}

\documentclass[border=5mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}

\begin{document}
\begin{tikzpicture}
\begin{axis}[width=4in,axis equal image,
          xmax=26,ymax=7,
          axis lines=middle,
          restrict y to domain=-3:6.5,
          enlargelimits={abs=1cm},
          axis line style={latex-latex},
          ticklabel style={fill=white},
          xtick={-5,5}
]
\addplot[domain=5:26,mark=none,samples=201] {sqrt(x + 5)} node [below left, yshift=-3pt]{$\scriptstyle{y}=\frac{x^{2} - 25}{\sqrt{x - 5}}$};
\addplot[domain=-6:5,dashed,thin,mark=none,samples=201] {sqrt(x + 5)};

\draw [densely dashed] (5,3.16227766) -- (5,0);
\draw [fill] (-5,0) circle [radius=1.5pt];
\draw [fill=white] (5,3.16227766) circle [radius=1.5pt];
\end{axis}
\end{tikzpicture}
\end{document}

答案2

使用 PSTricks 纠正现有的答案和问题。

\documentclass[pstricks,border=15pt,12pt]{standalone}
\usepackage{pst-plot}

\def\f{sqrt(x+5)}

\begin{document}
\begin{psgraph}[Dy=5,ticks=y,labels=y]{->}(0,0)(-7,-1)(12,11){12cm}{8cm}
    \psset{algebraic,plotpoints=150,linecolor=red}
    \psplot[linestyle=dashed,arrows=*-]{-5}{5}{\f}
    \psplot[arrows=o-]{5}{12}{\f}
    \psxTick(-5){-5}
    \psxTick(5){5}
    \uput[135](*10 {\f}){$\displaystyle y=\frac{\sqrt{x^2-25}}{\sqrt{x-5}}$}    
\end{psgraph}
\end{document}

在此处输入图片描述

答案3

PSTricks 解决方案使用pst-plot包裹:

\documentclass{article}

\usepackage{pst-plot}

\newcommand*\Label[1]{
  \psline(!#1 #1 5 add sqrt)(#1,0)
  \psdot(#1,0)
  \uput[270](#1,0){$#1$}
}

\begin{document}

\psset{
  unit = 0.26,
  algebraic
}
\begin{pspicture}(-8,-3)(36.4,13.5)
% points
\def\pointA{-5 }
\def\pointB{5 }
\def\pointC{30 }
  % drawing
  \psaxes[
    Dy = 5,
    labels = y,
    ticks = y
  ]{->}(0,0)(-8,-3)(35,12)[$x$,0][$y$,90]
  \psplot{\pointB}{\pointC}{sqrt(x + 5)}
 \psset{
   linestyle = dotted
 }
  \psplot{\pointA}{\pointB}{sqrt(x + 5)}
  \Label{\pointA}
  \Label{\pointB}
  \psdot[dotstyle = Bo](!\pointB \pointB 5 add sqrt)
  \uput[90](!\pointC \pointC 5 sub sqrt 1 add){%
    $\displaystyle y = \frac{\sqrt{x^{2} - 25}}{\sqrt{x - 5}}$%
  }
\end{pspicture}

\end{document}

输出

您所要做的就是选择\pointA(最左边的 x 值)、\pointB(虚线和实线相交)和\pointC(实线的标签点和终点)的值。然后绘图将进行相应调整。

相关内容