subfig、ref、renewコマンドの問題

subfig、ref、renewコマンドの問題

subfigureパッケージと対応する参照の使用に問題があります。

私は論文を書いていますが、図にこのように名前を付けたいと思っています

\numberwithin{figure}{part}
\renewcommand{\thefigure}{\arabic{part}.\arabic{figure}}

これは問題なく動作します。

subfigure出力を (Part,Figure,Subfigure) のようにしたいのですが、 (Figure,Subfigure)1.1.aしか得られません。1.a

使ってみた

\numberwithin{subfigure}{part}
\renewcommand{\thesubfigure}{\arabic{part}.\arabic{figure}.\alph{subfigure
} } 

しかし、これでは図のキャプションが台無しになります。私は次のようにサブ図を含めます。

\begin{figure}[htbp]
\centering
\subfigure[][]{
\includegraphics[width=0.4\textwidth]{Picture1}
\label{fig:Picture1}}
\subfigure[][]{\vspace{2pt}
 \includegraphics[width=0.5\textwidth]{Picture2.png}
\label{fig:Picture2}}
 \caption[What is seen on Pic1 and 2 ]{(a)text Pic 1 (b) text Pic 2}
\end{figure} 

そして、それを で参照します\ref{fig:Picutre1}。誰かアイデアを持っていますか?

答え1

パッケージをロードする前に、必ず図の番号付けを再定義してくださいsubfigure。そうすれば、希望どおりの出力が得られるはずです。

\numberwithinすでにラベル形式が変更されているため、 は冗長であることに注意してください\renewcommand。これらの参照の の印刷表現を変更する場合はpart、 を再定義する必要があります\thepart。これにより、変更の一貫性が保たれます。

サンプル出力

\documentclass{book}

\usepackage{amsmath}
\numberwithin{figure}{part}
\usepackage{subfigure,graphicx}

\renewcommand{\thepart}{\arabic{part}}

\begin{document}

\part{A part}
\begin{figure}[htbp]
\centering
\subfigure[][]{
\includegraphics[width=0.4\textwidth]{example-image-a}
\label{fig:Picture1}}
\subfigure[][]{\vspace{2pt}
 \includegraphics[width=0.5\textwidth]{example-image-b}
\label{fig:Picture2}}
 \caption[What is seen on Pic1 and 2]{(a) text Pic 1 (b) text Pic 2}
\end{figure} 

A reference to \ref{fig:Picture2}.
\end{document}

関連情報