Предотвращение разрыва строки в подписи к рисунку

Предотвращение разрыва строки в подписи к рисунку

У меня есть следующий рисунок с соответствующей подписью:введите описание изображения здесь

Как вы видите, подпись неуместно разрывает строку, чего я хочу избежать. Оптимально — не уменьшая размер шрифта текста подписи.

Код выглядит следующим образом:

\documentclass[12pt, a4paper] {article}
\usepackage[skip=10pt, labelfont=bf, labelsep=space]{caption}
\usepackage{tikz}
\usepackage[numbers,sort,authoryear]{natbib}
\hypersetup{hidelinks=true}


\begin{document}

\newcommand{\mytab}[1]{%
\begin{tabular}{@{}c@{}}
#1
\end{tabular}
}
\begin{figure} [h!]
\label{fig: timeline}
\begin{center}
\begin{tikzpicture}
\draw (0,0) -- (11,0);
\foreach \x in {0.8,4,5.5,7,10.2}
\draw(\x cm,3pt) -- (\x cm, -3pt);
\draw (0.8,0) node[below=3pt] {$T_0$};
\draw (4,0) node[below=3pt] {$T_1$};
\draw (5.5,0) node[below=3pt] {$0$};
\draw (7,0) node[below=3pt] {$T_2$};
\draw (10.2,0) node[below=3pt] {$T_3$};
\draw (2.35,0) node[above=12pt, align=center] {
                            $\left(\mytab{estimation \\ window}\right]$};
\draw (5.5,0) node[above=12pt, align=center]{
                            $\left(\mytab{event \\ window}\right]$};
\draw(8.65,0) node[above=12pt, align=center]{
                            $\left(\mytab{post-event \\ window}\right]$};
\end{tikzpicture}
\end{center}
\caption{Time Line for an Event Study (\cite{campbell1996}, p. 157})
\end{figure}

\bibliographystyle{agsm}
\bibliography{./references}
\end{document}

Спасибо за вашу помощь!

решение1

Несколько комментариев:

  • Поскольку вы (i) используете agsmстиль библиографии, который распространяется с harvardпакетом управления цитированием и (ii) загружаете пакет, natbibа не harvardпакет, вам следует загрузить har2natи пакет. Как следует из его названия, он «транслирует» различные макросы, которые определены пакетом harvard(и которые используются в agsm.bst), в эквивалентные natbibмакросы.

  • В данный момент вы загружаете natbibпакет с параметрами numbers, sortи authoryear. Вам следует отказаться от первых двух параметров: Стиль agsmпредназначен для ссылок в стиле authoryear — бессмысленно пытаться использовать его с ссылками в числовом стиле; параметр sortимеет смысл только в том случае, если numbersэто стиль ссылки.

  • Теперь перейдем к сути вашего запроса: вам следует написать команду \captionследующим образом:

    \caption{Time Line for an Event Study \citep[p.~157]{campbell1996}}
    

    Обратите внимание на использование символа ~(«галстук»), который действует как неразрывный пробел.

  • Два второстепенных момента: (i) \labelИнструкция должна поступатьпослеинструкцию \caption— особенно если вы хотите иметь возможность ссылаться на рисунок в другом месте документа. (ii) Использование \begin{center}...\end{center}добавляет много (вертикального) пробела; \centeringвместо этого используйте директиву .

введите описание изображения здесь

\documentclass[12pt, a4paper]{article}
\usepackage{filecontents}
\begin{filecontents}{references.bib}
@book{campbell1996,
  author = "John Y. Campbell and Andrew W. Lo and A. Craig McKinlay",
  title  = "The Econometrics of Financial Markets",
  year   = 1996,
  publisher = "Princeton University Press",
  address = "Princeton NJ",
}
\end{filecontents}
\usepackage[skip=10pt, labelfont=bf, labelsep=space]{caption}
\usepackage{tikz}
\usepackage[authoryear]{natbib}
\usepackage{har2nat}
\usepackage{hyperref}
\hypersetup{hidelinks=true}

\newcommand{\mytab}[1]{%
\begin{tabular}{@{}c@{}}
#1
\end{tabular}
}

\begin{document}

\begin{figure} [h!]
\centering
\begin{tikzpicture}
\draw (0,0) -- (11,0);
\foreach \x in {0.8,4,5.5,7,10.2}
\draw(\x cm,3pt) -- (\x cm, -3pt);
\draw (0.8,0) node[below=3pt] {$T_0$};
\draw (4,0) node[below=3pt] {$T_1$};
\draw (5.5,0) node[below=3pt] {$0$};
\draw (7,0) node[below=3pt] {$T_2$};
\draw (10.2,0) node[below=3pt] {$T_3$};
\draw (2.35,0) node[above=12pt, align=center] {
                            $\left(\mytab{estimation \\ window}\right]$};
\draw (5.5,0) node[above=12pt, align=center]{
                            $\left(\mytab{event \\ window}\right]$};
\draw(8.65,0) node[above=12pt, align=center]{
                            $\left(\mytab{post-event \\ window}\right]$};
\end{tikzpicture}
\caption{Time Line for an Event Study \protect\citep[p.~157]{campbell1996}} 
\label{fig:timeline}
\end{figure}

A cross-reference to \autoref{fig:timeline}.

\bibliographystyle{agsm}
\bibliography{./references}
\end{document}

Связанный контент