「図1-1」と表示されてしまうが「図1」にしたい

「図1-1」と表示されてしまうが「図1」にしたい

- ta yo の投稿
返信数: 10

%--^

\usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm, includefoot]{geometry}

\usepackage[dvipdfmx]{graphicx}

\usepackage[dvipdfmx, hidelinks]{hyperref}

\usepackage[numbers, sort]{natbib}

\usepackage{url}

\usepackage[at]{easylist}

\usepackage{listliketab}

\usepackage[english, japanese]{babel}

\usepackage{amsthm}

\newtheoremstyle{mystyle}{}{}{\normalfont}{}{\bfseries}{}{\newline}{}

\theoremstyle{mystyle}

\newtheorem{thm}{定理}[section]

\newtheorem*{thm*}{定理}

\newtheorem{prf}{証明}[section]

\newtheorem*{prf*}{証明}

\usepackage{bm}

\makeatletter

\renewcommand{\theequation}
{\arabic{section}.\arabic{equation}}

\@addtoreset{equation}{section}

\makeatother
%--^
¥chapter{いち} % 第1章
¥begin{figure} % 「図1」になっている
¥label{fig:a}
¥includegraphics{fig1.eps}
¥caption{figure 1}
¥end{figure}
ここで、
¥ref{fig:a} % と書くと「図1-1」と表示されてしまうが「図1」にしたい
ta yo への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- KUROKI Yusuke の投稿
jsbook.cls の

\renewcommand \thefigure
{\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure}

を参考にすれば変更できるでしょう.
ta yo への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- 奥村 晴彦 の投稿
意味がよくわかりませんが「図1」と表示されるようにプリアンブルに定義を書いたがそれは略しているのでしょうか。あと,間違えて\captionの上に\labelを書いてしまったとか。
奥村 晴彦 への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- KUROKI Yusuke の投稿
完全にタイプセットできる例を示してくれていないのでよくわかりませんね.(ということは書かずに済ませたかったのですが,致し方ありません.)
ta yo への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- 奥村 晴彦 の投稿
\documentclass{jsbook}
\renewcommand{\thefigure}{\arabic{figure}}
\begin{document}

\chapter{ほげ}

\begin{figure}
ほげ
\caption{ほげ}
\label{hoge}
\end{figure}

図\ref{hoge}では…。

\end{document}

のように不要な部分を省いて(というか必要な部分を省かないで)書いてもらえれば添削しやすいですね。
奥村 晴彦 への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- TONE Kozaburo の投稿
後、「表1」のようにも表示させたいのか。

\chapter が改まる毎に、図番号・表番号は1にリセットされるが、それで良いのか。
リセットされずに通し番号にしたいのか等を書かれると良いかもしれません。
奥村 晴彦 への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- ta yo の投稿

\documentclass[12pt, ja4]{jsarticle}

\makeatletter

\renewcommand{\theequation}
{\arabic{section}.\arabic{equation}}

\@addtoreset{equation}{section}

\makeatother

%--^-

\begin{document}

\maketitle

\tableofcontents% 目次の表示

\newpage


\section{ほげ}

\subsection{ほげ}

図\ref{fig:ほげ}に示した. \\

1.1に示した.\\% 結果

1に示した.% 希望

\begin{figure}[htbp]

\label{fig:ほげ}

\begin{center}

\includegraphics[scale=0.69]{./fig/ほげ}

\end{center}

\caption{ほげ}

\end{figure}

ta yo への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- ut の投稿

以下、傍観者の独り言です:

最初のご投稿を拝読した際に思ったのは、

  [1] そもそも \label を付ける場所を勘違いされてますね.
  [2] \thefigure を再定義すればよさそう.
  [3] book 系のクラスファイルでは普通、カウンタ “figure” は、カウンタ “chapter” に従属するように定義されているので、章をまたいで通し番号にするなら remreset.sty の \@removefromreset かな.
  [4] 普通は 「1.1」 となるのに 「1-1」 と表示されるということは、\thefigure がそのように定義されているクラスファイルを使ってらっしゃるのかな?
  [5] 「\ref{fig:a}」 だけで 「図1-1」 と表示されるということは、\p@figure がそういう風に定義されてるクラスファイルをお使いなのかな?

でした。

ご使用のクラスファイルが明示されてなかったので、[4] と [5] については想像するしかありませんでしたが、[1] ~ [3] については、私でも回答できそう、と思いました (でも、すぐに上級者のみなさんから適切なご回答が寄せられましたので、私の出る幕はありませんでしたけれど)。

まず、黒木さんが、[2] についてご回答をされて、続いて、奥村先生が ([4] [5] を踏まえつつ) [1] についてご指摘をされた後、黒木さんのご回答をより具体的にしたご回答をされました。また、[3] については刀祢さんが、ご指摘をされています。

あとは、ご質問者から 「解決しました」 という返答待ちかな、と思ってました。

ところが、次にご質問者の方は、最初のご投稿を書き直した再投稿をされました (ソースを示すだけじゃなくて、もう少し言葉を足されたほうが良いと思うのですが…)。

あれ、クラスファイルは jsarticle だったの?、chapter は要らないの?、それに、article 系のクラスファイルなら、\thefigure は単純に “\@arabic\c@figure” となってるので、「図\ref{fig:ほげ}」 は 「図 1.1」 じゃなくて、ご希望通り 「図 1」 って表示されるんじゃないのかなぁ?

でも、それに対して、奥村先生はその点には触れずに、

> 私の回答も見てくださいね

とだけお返事されています。

ut への返信

Re: 「図1-1」と表示されてしまうが「図1」にしたい

- TONE Kozaburo の投稿
結局のところ \label の位置が適切ではなかったからなのでしょう。

\begin{figure}[htbp]
% \label{fig:ほげ}%% ここではなく
\begin{center}
\includegraphics[scale=0.69]{./fig/ほげ}
\end{center}
\caption{ほげ}
\label{fig:ほげ}%% ここに持ってくる
\end{figure}

なお、1-1(正しくは 1.1)になったのは \subsection の小節番号を参照していたからですね。