LaTeX中使用包subfig引用子图标号

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/RobertChenGuangzhi/article/details/46651507

[toc]
使用LaTeX的过程中总免不了要在一个大图中包含好几个子图。当前在LaTeX中插入多个子图使用的最新版本的包围subfig,基本上好的主流的国外期刊都会具体要求使用该包。

1 问题描述

我在使用该包的过程中遇到的一个问题为:
我需要的子图的展现方式为
这里写图片描述
我刚开始使用的代码为

\begin{figure}[!htb]
    \centering
    \subfloat[]{\label{Fig:R1}%%
    \includegraphics[width=2.3in]{fig2_r1.eps}}
    \quad
    \subfloat[]{\label{Fig:R2}%%
    \includegraphics[width=2.3in]{fig2_r2.eps}}\\


    \caption{不同发起角色的不完全执行实例的推荐准确度对比:\ref{Fig:R1}发起人角色为$r1$,\ref{Fig:R2}发起人角色为$r2$}
    \label{Fig:RecAccuracy}
\end{figure}

上述代码运行的结果为
这里写图片描述
完全不符合我的需要。怎么办呢?

2 解决过程及方案

我刚开始第一个想到的是查阅包subfig的帮助文档1,但是由于该文档有将近70页的长度,我没耐心细致地看完它,直接跳到该文档的例子章节,来查看又没有满足我的要求的代码示例,无果。于是在google上面搜索,利用关键词“subfig”、“LaTeX subfig”、以及”LaTeX subfig 子图标号引用”等,没找到需要的方案。于是接着利用Baidu来进行相似的查询,仍然无果。我想利用全英文的单词来查询,但又苦于没有合适的英文单词来表达“子图标号引用”,没继续查询下去。这时时间已用去大概半个小时,正在我一筹莫展之际,我想干脆就认真地看subfig的帮助文档,毕竟那儿有subfig的完整的使用说明。
果然我看到11页的时候,嗅到了解决方案的味道:

The \subref command is provided to give an alternative reference to a sub-float. The standard \ref command returns a label built by concatenating the \p@float + \thesubfloat, which is often of the form “1a”. The \subref command returns the label shown on the List-of-Floats page, which may be in the format “(a)”.

顺着上面的例子,我就将代码中出现\ref的地方全部替换为\subref,再次运行,顺利得到我想要的结果。

3 启示

先人说“欲速则不达”是有道理的。当你以某种你认为节省的方式寻求某个问题的答案时,反而不能快速找到。同时,在网上我们找不到某个问题的解决方案时,不要灰心,让自己来解决这个问题。


  1. Steven Douglas Cochran. The subfig Package. 2004.
展开阅读全文

没有更多推荐了,返回首页