Beamer の UML グラフの横にテキストをフロートする

Beamer の UML グラフの横にテキストをフロートする

プレゼンテーションで UML シーケンス グラフを使用していますがbeamer、UML グラフの横のフローティング ボックスに、位置を正確に指定できるような数式をいくつか記述する必要があります。

私の UML コードは次のとおりです:

\documentclass[10pt]{beamer}
\usepackage{pgf-umlsd}
\begin{document}
\begin{frame}
\begin{sequencediagram}
    \newthread{CA}{CA}
    \newinst[4]{P}{$u_i$}

    \begin{messcall}{CA}{$
    \begin{bmatrix}
    s_{11}^i & \cdots & s_{1d}^i \\
    \vdots & \ddots & \vdots \\
    s_{m1}^i & \cdots & s_{md}^i \\
    \end{bmatrix}
    $}{P}
    \end{messcall}
\end{sequencediagram}
\end{frame}
\end{document}

ありがとう...

ここに画像の説明を入力してください

答え1

pgf-umlsdは、図の構築にさまざまな名前付きノードを使用するため、それらのノード名がわかれば、それを使用してテキストを配置できます。環境の内容は環境sequencediagram内に配置されるため、通常の方法を使用してテキストを追加tikzpictureできます。\node

ノード名を確認するには、 を調べる必要がありますpgf-umlsd.sty。たとえば、CAおよびノードはおよび と$u_{i}$名付けられます。このようなノードはすべて と名付けられます。ここで は実行中のカウンタです。inst1inst2instNN

したがって、直前に次の 2 行を追加できます\end{sequencediagram}

\node [below=3mm,xshift=2mm,anchor=north east,font=\tiny,align=left] at (inst1.south west) {some text here\\the align key\\allows for line breaks};
\node [below=3mm,xshift=-2mm,anchor=north west,font=\tiny,align=left] at (inst2.south east) {some other\\text\\over here};

次の結果が得られます。

ノードを追加したシーケンス図

完全なコード:

\documentclass[10pt]{beamer}
\usepackage{pgf-umlsd}
\begin{document}
\begin{frame}
\begin{sequencediagram}
    \newthread{CA}{CA}
    \newinst[4]{P}{$u_i$}

    \begin{messcall}{CA}{$
    \begin{bmatrix}
    s_{11}^i & \cdots & s_{1d}^i \\
    \vdots & \ddots & \vdots \\
    s_{m1}^i & \cdots & s_{md}^i \\
    \end{bmatrix}
    $}{P}
    \end{messcall}


\node [below=3mm,xshift=2mm,anchor=north east,font=\tiny,align=left] at (inst1.south west) {some text here\\the align key\\allows for line breaks};
\node [below=3mm,xshift=-2mm,anchor=north west,font=\tiny,align=left] at (inst2.south east) {some other\\text\\over here};

\end{sequencediagram}
\end{frame}
\end{document}

関連情報