我有这样的代码:
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\draw [->,thick] (-5,0) -- (5,0) node[right] {$x$};
\draw [->,thick] (0,-5) -- (0,5) node[above] {$y$};
\draw[ultra thick, domain=-5:5] plot (\x, {pow(\x,2)-5});
\end{tikzpicture}
\end{document}
当我绘制这个时,抛物线远远超出了我想要的面积。有没有办法限制函数 f(x)=x^2-5 的范围以适应坐标区域,即仅显示 y 坐标在 -5 和 5 之间的点?
答案1
\clip
您可以在绘图之前添加:
\documentclass[tikz, border=5mm]{standalone}
\begin{document}
\begin{tikzpicture}
\draw [->,thick] (-5,0) -- (5,0) node[right] {$x$};
\draw [->,thick] (0,-5) -- (0,5) node[above] {$y$};
\clip (-5,-5) rectangle (5,5);
\draw[ultra thick, domain=-5:5] plot (\x, {pow(\x,2)-5});
\end{tikzpicture}
\end{document}
答案2
虽然 Ti 的内部情节功能钾Z 非常适合绘制简单的图,我建议使用 PGFPlots 包绘制更高级的图。您可以找到手册这里,以及一个漂亮的画廊,其中有一切你可以想到这里。
使用 PGFPlots,你的图表看起来如下:
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.13}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=6cm,
height=6cm,
title={A test plot},
xlabel={x},
ylabel={y},
axis lines=middle,
domain=-5:5,
samples=100,
xmin=-5, xmax=5,
ymin=-5, ymax=5
]
\addplot[black, ultra thick] {pow(x,2)-5};
\end{axis}
\end{tikzpicture}
\end{document}
默认情况下,PGFPlots 会在轴周围绘制一个矩形(参见示例页面)。要为轴添加单条线,请使用axis lines=middle
。
使用\pgfplotsset{compat=1.13}
,您可以告诉 PGFPlots 使用版本 1.13。我建议您将此值设置为最新的值。只要您使用的版本 >= 1.11,您就可以使用正常的 Ti钾\draw (0,0) -- (1,1);
使用与图中相同的Z 命令(如)和坐标。
结果:
答案3
如果你的 LaTeX 安装能够调用 Gnuplot 作为外部程序,你可以替换
\draw[ultra thick, domain=-5:5] plot (\x, {pow(\x,2)-5});
经过
\draw[ultra thick] plot[domain=-5:5, yrange=-5:5] function{x*x-5};
请参阅TikZ/PGF手动的。