我需要为演示文稿中的图表编号,但我不知道为什么图表没有编号。我尝试了在互联网上能找到的方法,但仍然找不到编号。我会使用 Figure 而不是喜欢图 1 ecc。
这是我的代码:
\documentclass[t,9pt,pdftex]{beamer}
\usetheme{tb}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage{textcomp}
\usepackage{graphicx}
\usepackage[french]{babel}
%\setbeamertemplate{navigation symbols}[horizontal]
\usepackage{multicol}
%\usepackage{graphicx}
%\renewcommand{\thefigure}{\arabic{section}.\arabic{subsection}.\arabic{figure}}
\addtobeamertemplate{frametitle}{}{\vspace{-1.5em}}
\setbeamertemplate{itemize item}{\color{orange}$\blacktriangleright$}
\begin{document}
\begin{frame}
\begin{figure}[h]
\centering
\includegraphics[width=7 cm\textwidth]{var.png}
\caption{VAR Analysis figure adapted from \text{Lütkepohl}.}
\label{fig: VAR Analysis figure }
\end{figure}
\end{frame}
\end{document}
答案1
您可以使用它\setbeamertemplate{caption}[numbered]
来获取编号标题。
其他一些评论:
不要使用
pdftex
类选项。最好的情况下,这是没有必要的,因为 latex 可以自动找出你是如何编译文档的,最坏的情况下,它将迫使 latex 使用错误的图形驱动程序等。不要使用inputenc 的
\usepackage{ucs}
选项utf8x
。它们都不是必需的,并且可能会导致问题,具体取决于您安装的 hyperref 版本。\usepackage{graphicx}
没有必要,beamer 会帮你加载\usepackage{multicol}
:beamer 有自己的列机制,最好使用它而不是多列我建议不要对项目颜色进行硬编码,而是使用适当的投影仪模板:
\setbeamertemplate{itemize item}[triangle] \setbeamercolor{itemize item}{fg=orange}
beamer 没有浮动机制,指定浮动说明符是没有意义的,例如
[h]
投影仪图形默认居中,不需要
\centering
语法
width=7 cm\textwidth
无效。请使用7cm
或\textwidth
,但不要同时使用两者var.png
-> 最好只使用文件名而不使用文件类型。如果您有不同格式的相同图形,latex 将自动选择最适合您使用的引擎的格式。就像@Mico 已经指出的那样,
\text{Lütkepohl}
这没有多大意义,特别是在数学模式之外\label{fig: VAR Analysis figure }
:帮自己一个忙,不要在标签中使用空格不要滥用
\\
换行符。在您的屏幕截图中,您在图后使用 if,这将导致错误。
\documentclass[t,9pt]{beamer}
%\usetheme{tb}
\usepackage{textcomp}
\usepackage[french]{babel}
\addtobeamertemplate{frametitle}{}{\vspace{-1.5em}}
\setbeamertemplate{itemize item}[triangle]
\setbeamercolor{itemize item}{fg=orange}
\setbeamertemplate{caption}[numbered]
\begin{document}
\begin{frame}
\begin{figure}
\includegraphics[width=7cm]{example-image-duck}
\caption{VAR Analysis figure adapted from Lütkepohl.}
\label{fig: VAR Analysis figure }
\end{figure}
\end{frame}
\end{document}