我在使用 Metropolis 主题的 Beamer 演示文稿中添加 TikZ 图形时遇到问题。以下是问题示例:
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{pgfplots}
%\usetheme{metropolis}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{frame}
\begin{center}
\begin{tikzpicture}
\begin{axis}[
view = {135}{20},
xlabel=$x$,
ylabel=$y$,
zlabel=$z$,
xmin=-1, xmax=1,
ymin=-1, ymax=1,
zmin=0, zmax=1,
]
\draw (0, 1, 0) -- (1, 1, 1);
\end{axis}
\end{tikzpicture}
\end{center}
\end{frame}
\end{document}
这段代码实现了我想要的功能,但是取消注释该行\usetheme{metropolis}
会改变图形并使该行更短。(我认为它不是不可见的,只是长度非常短。)如何在仍使用 Metropolis 主题的同时获得所需的图像?
提前致谢!
答案1
编译日志显示 PGFPlots
包 pgfplots 通知“compat/show suggested version=true”:您可能会受益于 \pgfplotsset{compat=1.18}(当前兼容级别:1.9)。
即使你有\pgfplotsset{compat=1.18}
。1.9 级别在metropolis
主题中是硬编码的。
PGFPlotsaxis cs:
在 1.11 版中作为默认坐标系引入。一种方法是继续使用 1.9 版并明确给出坐标系,如下所示:
\draw (axis cs:0, 1, 0) -- (axis cs:1, 1, 1);
另一个可能更好的方法是像这样\pgfplotsset{compat=1.18}
移动:\begin{document}
\documentclass{beamer}
\usepackage{pgfplots}
\usetheme{metropolis}
\begin{document}
\pgfplotsset{compat=1.18}
\begin{frame}
\begin{center}
\begin{tikzpicture}
\begin{axis}[
view = {135}{20},
xlabel=$x$,
ylabel=$y$,
zlabel=$z$,
xmin=-1, xmax=1,
ymin=-1, ymax=1,
zmin=0, zmax=1,
]
\draw (0, 1, 0) -- (1, 1, 1);
\end{axis}
\end{tikzpicture}
\end{center}
\end{frame}
\end{document}
-或者您可以编辑主题中的第 913 行来更正版本。