我想绘图$f(x,y) = \sqrt{y - x^{2}}$
但出现以下错误:
!Package pgfplots 内部错误:z 缓冲区重新排序期间发生内部错误:行/列不平衡!我的行数 = 25,列数 = 25。
代码:
\begin{figure}[h]
\centering
\begin{tikzpicture}
\begin{axis}[
ymin = 0,
xmin = -4,
xmax = 4,
zmin = 0,
xlabel = $x$,
ylabel = $y$,
zlabel = {$f(x,y)$},
colormap/cool
]
\addplot3[
surf,
domain = -4:4,
]{sqrt(y - x^2)};
\end{axis}
\end{tikzpicture}
\caption{Gráfico de $f(x,y) = \sqrt{y - x^{2}}$.}
\label{fig:sqrty-x2}
\end{figure}
答案1
欢迎!报告了非常相似的错误这里,我认为答案也可以在这里使用。但是,需要稍有不同,简单的域更改将不起作用(在此基础上)。一种选择是添加
restrict expr to domain={y-x*x}{0:100}
其他选项包括过滤器。
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}% <-added but not necessary
\begin{document}
\begin{figure}[h]
\centering
\begin{tikzpicture}
\begin{axis}[
ymin = 0,
xmin = -4,
xmax = 4,
zmin = 0,
xlabel = $x$,
ylabel = $y$,
zlabel = {$f(x,y)$},
colormap/cool,
restrict expr to domain={y-x*x}{0:100}
]
\addplot3[
surf,
domain = -4:4,
]{sqrt(y - x*x)};
\end{axis}
\end{tikzpicture}
\caption{Gr\'afico de $f(x,y) = \sqrt{y - x^{2}}$.}
\label{fig:sqrty-x2}
\end{figure}
\end{document}
另一个选择是将绘制的函数更改为sqrt(max(y - x*x,0))
。
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}% <-added but not necessary
\begin{document}
\begin{figure}[h]
\centering
\begin{tikzpicture}
\begin{axis}[
ymin = 0,
xmin = -2.5,
xmax = 2.5,
zmin = 0,
xlabel = $x$,
ylabel = $y$,
zlabel = {$f(x,y)$},
colormap/cool,
]
\addplot3[
surf,
domain = -2:2,
domain y=0:4
]{sqrt(max(y - x^2,0))};
\end{axis}
\end{tikzpicture}
\caption{Gr\'afico de $f(x,y) = \sqrt{y - x^{2}}$.}
\label{fig:sqrty-x2}
\end{figure}
\end{document}
在这里我也对域名做了一些修改。