Domanda

Sto utilizzando pacchetti subfigure e float per creare figure e tabelle che voglio creare e sto cercando di creare il mio ambiente graph con il suo contatore e la didascalia (risolto c', grazie per dmckee).Ora vorrei creare \subgraph comando che farà esattamente la stessa \subfigure comando.

Ho provato a creare il mio comando con propreate contatore (Assistito qui, grazie per Alexey).Ma il problema appare con l'utilizzo di \ref comando.Di riferimento per \subfigure restituisce 2.1(a) ma il riferimento a \subgraph restituisce 1.

Come ho cercato di capire come risolvere questo ho letto subfig manuale, dove ho trovato \newsubfloat comando con un esempio.Primo errore è stato in uso di subfig's comandi in subfigure e mi sono bloccato lì.Se io uso subfigure Posso accedere \subfigure ma non può costringere \subgraph di lavoro, quando uso subfig Posso acces \subfloat in graph ma non in figure e \ref restituisce 1.0 invece di 1.1 (a).

definizione subfig pacchetto:

\newfloat{graph2}{tbph}{lom}[chapter]
\restylefloat*{graph2}
\floatstyle{plain}
\floatname{grap2}{Graph2}
\captionsetup[graph2]{position=top}
\newcommand{\listofGraphs}{\listof{Graph2}{List of Graphs}}
\newsubfloat[position=bottom,listofformat=subsimple]{graph2}

la mia definizione \subgraph

\newfloat{graph1}{H}{lop}[chapter]
\floatname{graph1}{Graph1}
\newcounter{GraphOne}[graph1]
\def\theGraphOne{\alph{GraphOne}}
\newcommand{\subgraph}[2][]{
\captionof{subGraph}{#1} #2
}

\newfloat{subGraph}{H}{lop}[graph1]
\floatname{subGraph}{}

Si prega di aiutare me con la comprensione di come \label e \ref i comandi funzionano (credo che la mia soluzione collassa a causa \label è prima di \caption) e/o con la forzatura subfig pacchetto a lavorare come voglio.

Grazie per qualsiasi idea e di essere misericordioso con il mio inglese.

Crowley

Miglioramento:

Utilizzando caption pacchetto posso creare un nuovo contatore (subGraph) e il suo utilizzo al di fuori del suo ambiente.Solo modo per avere sia il contatore di sottografi e grafico) correttamente di cui è utilizzando \captionof{graph} prima \subgraph.

Così, la mia nuova domanda è:Come eseguire \captionof{graph} prima di sentiment e impaginazione di sotto di loro?E come per forza \ref per mostrare 1.1-a invece di 1.1.1

Atachements:

Codice subfigure:(Restituisce <chapter>.<figure> (<subfigure>) corretto.

\begin{figure}
\subfigure[sub-caption]{\includegraphics{fig1}\label{fig:1}}
\caption{main caption}
\end{figure}
\ref{fig:1}

Codice subfig:(Restituisce <chapter>.<graph2>-1<subfigure>) non corretto.

\begin{graph2}
\subfloat[sub-caption]{\includegraphics{fig1}\label{fig:2}}
\caption{main caption}
\end{graph2}
\ref{fig:2}

Il mio codice:(Restituisce <chapter>.<graph1>.<subgraph> ma la voce presenta lo stesso "indirizzo")

\begin{graph1}
\captionof{graph1}{main caption}
\subgraph[sub-caption]{\includegraphics{fig1}\label{fig:3}}
\end{graph1}
\ref{fig:3}
È stato utile?

Soluzione

Penso che la tua subfig la soluzione dovrebbe funzionare (subfigure è sconsigliata comunque).Il problema con i riferimenti sbagliati potrebbe avere a che fare con voi utilizzando \label in modo non corretto.Si deve avere il \label comando dopo il \caption, o parte di essa:

\begin{figure}
\caption{A Figure}
\label{fig}
\end{figure}

o

\begin{figure}
\caption{A Figure%
\label{fig}}
\end{figure}

Modifica:la seguente "per me funziona".Come ho detto, la \label dopo il \caption:

\documentclass{report}
\usepackage{float}
\usepackage{subfig}
\newfloat{graph2}{tbph}{lom}[chapter]
\restylefloat*{graph2}
\floatstyle{plain}
\floatname{grap2}{Graph2}
\captionsetup[graph2]{position=top}
\newcommand{\listofGraphs}{\listof{Graph2}{List of Graphs}}
\newsubfloat[position=bottom,listofformat=subsimple]{graph2}
\begin{document}
\chapter{Test}
\section{Test s}

\begin{graph2}
\subfloat[sub-caption]{\fbox{Fig 1}}
\caption{main caption}
\label{fig:1}
\end{graph2}

\begin{graph2}
\subfloat[sub-caption]{\fbox{Fig 2}}
\caption{main caption}
\label{fig:2}
\end{graph2}

Graph~\ref{fig:1} is the first graph, and~\ref{fig:2} is the second.

\end{document}

Questo produce:

Graph 1.1 is the first graph, and 1.2 is the second.

Altri suggerimenti

Io non riesco a elaborare in questo momento, ma si desidera utilizzare efstepcounter invece di \addtocounter.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top