图纸下方的空白处

图纸下方的空白处

这是我的 tikz 代码:

\usepackage{tikz, tikz-3dplot}

\begin{figure}[ht!]
        \centering
        \tdplotsetmaincoords{45}{110}
        \begin{tikzpicture}[scale=8, tdplot_main_coords]
            \tdplotsinandcos{\sintheta}{\costheta}{75}
            \tdplotdrawarc{(0,0,\sintheta)}{\costheta}{0}{360}{}{}
            \foreach \angle in {0,15,...,360} {
                \tdplotsetthetaplanecoords{\angle};
                \tdplotdrawarc[tdplot_rotated_coords]{(0,0,0)}{1}{0}{15}{}{}
            }
        \end{tikzpicture}
        \caption{Top row.}
        \label{top_row}
\end{figure}

这就是结果。

在此处输入图片描述

请问您能解释一下绘图和标题之间的差距是从哪里来的吗?

答案1

循环中的线条\foreach似乎是问题所在。如果将它们从边界框的计算中移除(选项overlay),多余的空间就会消失:

\documentclass{article}
\usepackage{tikz, tikz-3dplot}

\begin{document}
\begin{figure}[ht!]
        \centering
        \tdplotsetmaincoords{45}{110}
        \begin{tikzpicture}[scale=8, tdplot_main_coords]
            \tdplotsinandcos{\sintheta}{\costheta}{75}
            \tdplotdrawarc{(0,0,\sintheta)}{\costheta}{0}{360}{}{}
            \foreach \angle in {0,15,...,345} {
                \tdplotsetthetaplanecoords{\angle};
                % Option "overlay" added:
                \tdplotdrawarc[tdplot_rotated_coords, overlay]{(0,0,0)}{1}{0}{15}{}{}
            }
        \end{tikzpicture}
        \caption{Top row.}
        \label{top_row}
\end{figure}
\end{document}

结果

评论:

  • 0为角度和画了两次线360。因此,本例删除了 的线360

相关内容