我想使用 TikZ 绘制一些图表,但是以下代码不起作用:
\documentclass{minimal}
\usepackage{amsmath}
\usepackage{pgf,tikz}%
\begin{document}
\begin{tikzpicture}
\draw[->] (-3,0) -- (2.2,0) node[right] {$x$}; %
\draw[->] (0,-0.5) -- (0,3.2) node[above] {$y$};%
\draw plot (\x,{\x^2});%
\end{tikzpicture}
\end{document}
知道什么地方出了问题吗?
如何绘制类似的函数x \mapsto a^x (a > 0)
?
编辑:感谢补丁,但绘图2^x
不起作用,我使用 Jakes 的答案得到了以下图片:
答案1
正如 Martin Scharrer 指出的那样,这是一个错误,Hendrik Vogt 在他的回答中提供了一个补丁我该如何解决这个 TikZ 错误:(\x)^2 和 \x^2 在 TikZ 图中产生不同的结果?
附注:会自动tikz
加载pgf
,因此您不需要明确加载它。
\documentclass{article}
\usepackage{tikz}%
\makeatletter
\def\tikz@scan@no@calculator#1(#2){%
\patch@tikz(#2)%
\expandafter\tikz@@scan@@no@calculator\expandafter#1\tikz@temp
}
\def\patch@tikz(#1,#2){%
{\expandafter\let\expandafter\save@tikz@plot@var\tikz@plot@var
\expandafter\def\tikz@plot@var{(\save@tikz@plot@var)}%
\xdef\tikz@temp@i{#1}%
\xdef\tikz@temp@ii{#2}%
}%
\edef\tikz@temp{({\tikz@temp@i},{\tikz@temp@ii})}%
}
\makeatother
\begin{document}
\begin{tikzpicture}
\draw[->] (-2.2,0) -- (2.2,0) node[right] {$x$}; %
\draw[->] (0,-0.5) -- (0,3.2) node[above] {$y$};%
\draw [domain=-2:2,orange] plot (\x,\x^2);
\draw [domain=-2:2,blue] plot (\x,2^\x);%
\end{tikzpicture}
\end{document}