在 PGFPlots 中绘制不相连的 3D 弧

在 PGFPlots 中绘制不相连的 3D 弧

我正在尝试使用参数方程在 PGFPlots 中绘制三维半圆弧。这是相关代码。

\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}

\pgfplotsset{compat=1.17}

\begin{document}

\begin{tikzpicture}
\begin{axis}[
    axis lines=middle,
    ticks=none,
    view = {135}{20},
    xlabel=$x$,
    ylabel=$y$,
    zlabel=$z$,
    xmin=-1, xmax=1,
    ymin=-1, ymax=1,
    zmin=0, zmax=1,
    unit vector ratio = 1 1 1,
]
\addplot3[domain=-0.25*pi:0.75*pi,red]
({0.5*cos(deg(x))},{0.5*sin(deg(x))},{0.5});
\end{axis}
\end{tikzpicture}

\end{document}

但它看起来并不像我想要的那样。我不想让弧的两端连接起来。我该如何解决这个问题?提前谢谢!

在此处输入图片描述

答案1

\documentclass[tikz, border=1cm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines=middle,
ticks=none,
view={135}{20},
xlabel=$x$,
ylabel=$y$,
zlabel=$z$,
xmin=-1, xmax=1,
ymin=-1, ymax=1,
zmin=0, zmax=1,
%unit vector ratio = 1 1 1,
axis equal,
scale mode=none,
trig format plots=rad,
]
\addplot3[domain=-0.25*pi:0.75*pi, red, samples y=1]({0.5*cos(x)},{0.5*sin(x)},{0.5});
\end{axis}
\end{tikzpicture}
\end{document}

3D 图形机智半圆

摘自手册第 125 页

如果您使用\addplot3表达式,mesh/rowsmesh/cols是根据值样本和计算的samples y。默认情况下,\addplot3 表达式始终对网格进行采样。如果您希望它对一条线进行采样,请设置 samples y=1(或等效地y domain=0:0)。

相关内容