- Questo topic ha 16 risposte, 6 partecipanti ed è stato aggiornato l'ultima volta 13 anni, 3 mesi fa da
OldClaudio.
-
CreatoreTopic
-
29 Maggio 2013 alle 7:13 #86140::
Buongiorno a tutti,sto scrivendo un articolo in doppia colonna, tuttavia vorrei inserire un immagine che per motivi di visibilità dovrà occupare la larghezza di entrambe le colonne di testo. Diciamo che si tratta di un grafico “molto largo” e “non molto alto”, che quindi non potrà ne occupare una pagina intera, ne restare su una sola colonna.
Ho cercato di inserire il grafico nella parte alta della pagina tramite questo codice all’interno del testo della prima colonna:
`
\begin{figure}[t]
\centering
\onecolumn\includegraphics[scale=0.6]{grafico1.pdf}
\caption{\textbf{Titolo.}}
\label{ref:fig3}
\twocolumn
\end{figure}
`tuttavia quanto continuo a scrivere e passo alla seconda colonna il testo va a sovrapporsi al grafico stesso.
Qualche idea?
Grazie per l’aiuto, Gabriele.
-
CreatoreTopic
-
AutoreRisposte
-
-
29 Maggio 2013 alle 7:19 #86141
-
29 Maggio 2013 alle 7:21 #86142::
gabriulla” post=85592Buongiorno a tutti,
sto scrivendo un articolo in doppia colonna, tuttavia vorrei inserire un immagine che per motivi di visibilità dovrà occupare la larghezza di entrambe le colonne di testo. Diciamo che si tratta di un grafico “molto largo” e “non molto alto”, che quindi non potrà ne occupare una pagina intera, ne restare su una sola colonna.
Ho cercato di inserire il grafico nella parte alta della pagina tramite questo codice all’interno del testo della prima colonna:
`
\begin{figure}[t]
\centering
\onecolumn\includegraphics[scale=0.6]{grafico1.pdf}
\caption{\textbf{Titolo.}}
\label{ref:fig3}
\twocolumn
\end{figure}
`tuttavia quanto continuo a scrivere e passo alla seconda colonna il testo va a sovrapporsi al grafico stesso.
Qualche idea?
Grazie per l’aiuto, Gabriele.
Togli [t], togli \onecolumn e \twocolumn. Semplicemente scrivi \begin{figure*} e \end{figure*}.
Ciao
Tommaso
-
29 Maggio 2013 alle 7:22 #86143::
robitex” post=85594Ciao,
devi usare l’ambiente figure in versione asteriscata:
`
\begin{figure*}…
…
\end{fugure*}
`Saluti.
R.Ciao, grazie per la risposta, però l’ambiente {figure*} mi riserva una pagina intera per la sola immagine, mentre io vorrei avere immagine e testo sulla stessa pagina.
Gabriele.
-
29 Maggio 2013 alle 7:50 #86144::
gabriulla” post=85596
Ciao,
devi usare l’ambiente figure in versione asteriscata:
`
\begin{figure*}…
…
\end{fugure*}
`Saluti.
R.Ciao, grazie per la risposta, però l’ambiente {figure*} mi riserva una pagina intera per la sola immagine, mentre io vorrei avere immagine e testo sulla stessa pagina.
Gabriele.
Hai levato i comandi \onecolumn e \twocolumn?
Ciao
Tommaso
-
29 Maggio 2013 alle 7:58 #86145
-
29 Maggio 2013 alle 8:12 #86146
-
29 Maggio 2013 alle 8:38 #86147::
Se l’immagine, come dici, è molto grande, difficilmente LaTeX la metterà in una pagina con anche testo; il valore normale è che almeno il 20% della pagina (in senso verticale) sia riservato al testo e non più del 70% a tabelle o figure (inserite con gli ambienti [tt]table[/tt] o [tt]figure[/tt], con la variante * se in doppia colonna). Perciò se l’altezza della tua immagine è più del 70% della dimensione verticale della gabbia, non hai speranza, a meno che tu non modifichi i valori dei parametri. Ma te lo sconsiglio: un’immagine enorme nasconderebbe poche righe di testo sotto, sconcertando il lettore.Ciao
Enrico
-
29 Maggio 2013 alle 8:53 #86148::
Il mio documento è di classe IEEEtran,ho già provato ad utilizzare subfigure così come indicato a pagina 9 di http://texdoc.net/texmf-dist/doc/latex/IEEEtran/IEEEtran_HOWTO.pdf ma non ho ottenuto alcun risultato.
Soprattutto perchè io ho una figura unica…
Sono riuscito riuscito ad ottenere il risultato che volevo con una \makebox di dimensioni adeguate che sono andato ad inserire in mezzo al testo proprio alla fine della prima colonna, ma ovviamente questa non è una soluzione molto elegante!
-
29 Maggio 2013 alle 8:55 #86149::
egreg9″ post=85601Se l’immagine, come dici, è molto grande, difficilmente LaTeX la metterà in una pagina con anche testo; il valore normale è che almeno il 20% della pagina (in senso verticale) sia riservato al testo e non più del 70% a tabelle o figure (inserite con gli ambienti [tt]table[/tt] o [tt]figure[/tt], con la variante * se in doppia colonna). Perciò se l’altezza della tua immagine è più del 70% della dimensione verticale della gabbia, non hai speranza, a meno che tu non modifichi i valori dei parametri. Ma te lo sconsiglio: un’immagine enorme nasconderebbe poche righe di testo sotto, sconcertando il lettore.
Ciao
Enricol’immagine è pari a circa il 30% della dimensione verticale.
-
29 Maggio 2013 alle 9:14 #86150::
gabriulla” post=85605
Se l’immagine, come dici, è molto grande, difficilmente LaTeX la metterà in una pagina con anche testo; il valore normale è che almeno il 20% della pagina (in senso verticale) sia riservato al testo e non più del 70% a tabelle o figure (inserite con gli ambienti [tt]table[/tt] o [tt]figure[/tt], con la variante * se in doppia colonna). Perciò se l’altezza della tua immagine è più del 70% della dimensione verticale della gabbia, non hai speranza, a meno che tu non modifichi i valori dei parametri. Ma te lo sconsiglio: un’immagine enorme nasconderebbe poche righe di testo sotto, sconcertando il lettore.
Ciao
Enricol’immagine è pari a circa il 30% della dimensione verticale.
Finché non fai vedere il preambolo e come inserisci la tua figura, si va “a usma”, come si dice da noi. Intanto prova a caricare il pacchetto dblfloatfix e vedi che succede. Piuttosto: che c’entra sub figure?
Ciao
Tommaso
-
29 Maggio 2013 alle 9:41 #86151::
preambolo:`\documentclass[9pt]{IEEEtran}
\IEEEoverridecommandlockouts
\usepackage{cite}
\usepackage{graphicx}
\usepackage[cmex10]{amsmath}
%\usepackage{algorithm,algorithmic}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage[tight,footnotesize]{subfigure}
\usepackage{url}
\usepackage{float}`immagine (senza * che mi fa andare l’immagine in pagina vuota):
`\begin{figure}[t]
\centering
\onecolumn\includegraphics[width=\textwidth]{grafico1.pdf}
\caption{\textbf{Titolo.}}
\label{ref:fig3}
\twocolumn
\end{figure}}`usare \onecolumn e \twocolumn fanno in modo che la didascalia venga centrata insieme all’immagine, mentre se non li uso tutto rimane in linea con la prima colonna… Riamane il problema che il testo si sovrappone sulla seconda colonna…
Gabriele.
-
29 Maggio 2013 alle 9:44 #86152
-
29 Maggio 2013 alle 10:26 #86153::
gabriulla” post=85609anche con dblfloatfix da lo stesso risultato…
Gabriele.
Non vedo dove sia il problema. Ecco un esempio minimo compilabile:
`
\documentclass[9pt]{IEEEtran}\usepackage[draft]{graphicx}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{figure*}
\centering
\includegraphics[width=\textwidth,height=3cm]{grafico1.pdf}
\caption{\textbf{Titolo.}}
\label{ref:fig3}
\end{figure*}\lipsum\lipsum\lipsum\lipsum\lipsum
\end{document}
`
In quella classe sono allineate a sinistra. Quando la didascalia è già di un paio di righe, l’effetto non è così male.
Se proprio la vuoi centrare prova questo:`
\fbox{%
\begin{minipage}{.5\textwidth}
\caption{\textbf{Titolo.}}
\end{minipage}}
`Dopo aver visto il risultato, togli \fbox. L’ho messo solo per mostrare lo spazio occuapto dalla didascalia.
Ciao
Ivan
-
29 Maggio 2013 alle 10:32 #86154::
`\begin{figure}[t]
\centering
\onecolumn\includegraphics[width=\textwidth]{grafico1.pdf}
\caption{\textbf{Titolo.}}
\label{ref:fig3}
\twocolumn
\end{figure}}`NON USARE ASSOLUTAMENTE \ONECOLUMN E \TWOCOLUMN ALL’INTERNO DELL’AMBIENTE FIGURE; toglili immediatamente e usa l’ambiente figure*:
`\begin{figure*}
\centering
\includegraphics[width=\textwidth]{grafico1}
\caption{\textbf{Titolo}}\label{ref:fig3}
\end{figure*}`
-
30 Maggio 2013 alle 6:41 #86155::
Allora,`\begin{figure*}
\centering
\includegraphics[width=\textwidth]{grafico1}
\caption{\textbf{Titolo}}\label{ref:fig3}
\end{figure*}`funziona se inserisco questo codice nella pagina precedente rispetto a dove voglio che l’immagine venga effettivamente inserita, in questo modo latex mi metterà l’immagine nella pagina successiva.
Tutto ok fino a questo punto, il problema è che ho due immagini di queste dimensioni che dovranno essere posizionate ad un paio di pagine di distanza. La prima immagine riesco a posizionarla dove vorrei, ma quando inserisco la seconda ritorno allo stesso problema.
In questo caso addiruttura latex mi sposta entrambe le immagini nella pagina finale del documento, questo nonostante io le abbia ancorate con [t].
a questo punto spero di trovare un posizionamento che non mi darà errori…. Forse inserendo più testo fra le due immagini tutto si risolverà, il probelma è che non so che scrivere 😀 .
NB: le proporzioni delle immagini sono di 28/11.
-
30 Maggio 2013 alle 10:25 #86156::
Una immagine con le dimensioni 28 per 11 portata a larghezza completa del testo può stare in effetti in testa alla pagina, ma non ce ne possono stare due; quindi è evidente che le tue due immaigni a larghezza piena devono stare su pagine diverse; generalmente LaTeX, con il suo algoritmo per costruire la pagina da inviare al file di uscita, mette di default le figure asteriscate all’inizio della pagina successiva a quella dove si trova il testo sorgente che racchiudeva l’ambiente figure*. Dunque quello che ottieni è normale.Però può succedere che la seconda delle due figure asteriscate non abbia abbastanza testo dopo, e quindi vada a finire in fondo al capitolo o in fondo al documento. Prova il segiuente esempio minimo compilabile:`% !TEX TS-program = pdflatex
% !TEX encoding = UTF-8 Unicode\documentclass[a4paper,twocolumn]{book}
\usepackage{lipsum}
\begin{document}
\lipsum[1-4]\begin{figure*}
\unitlength=\dimexpr \textwidth/28\relax
\begin{picture}(28,11)
\put(0,0){\framebox(28,11){}}
\end{picture}
\caption{Prima figura}
\end{figure*}\lipsum[5-8]
\begin{figure*}
\unitlength=\dimexpr \textwidth/28\relax
\begin{picture}(28,11)
\put(0,0){\framebox(28,11){}}
\end{picture}
\caption{Seconda figura}
\end{figure*}\lipsum[9-20]
\end{document}`
Se nell’ultimo comando \lipsum lasci così com’è vedi che le due figure compaiono in testa a due pagine consecutive; se invece ne cambi l’argomento facoltatio da [9-20] a [9-12] constati che la seconda figura va in fondo al documento. Perché? perché il primi \lipsum sono quasi tutti consumati dalla prima pagina, e non c’è abbastanza testo nella seconda per rimepirla completamente e rinviare qualche capoverso alla terza pagina. Gia mettendoci 13 al posto di 12, una parte dell’ultimo cpaoverso va nella terza pagina e la figura va al suo posto desiderato in testa alla pagina.
Credo di averti spiegato l’intero meccanismo. Se vuoi approfondire puoi leggere la Guida GuIT dove in diversi punti si discute o descrive come vengono inseriti gli oggetti mobili (detti anche galleggianti, flottanti, floating bodies, eccetera); l’algoritmo seguito da LaTeX è piuttosto complesso, ma in condizioni normali produce i risultati migliori. In condizioni anomale si possono avere diversi inconvenienti, tra i quli quelli che tu lamenti.
Se non sai cos’altro scrivere nel tuo testo per mettercene abbastanza da non fare andare la seconda figura in fondo al testo, puoi provare a mettere i due ambienti figure* consecutivi l’uno all’altro, senza metterci nessun testo in mezzo; tanto LaTeX te li sposta altrove, dove tipograficamente stanno bene; tu vi fai riferimento con i label, \fref, \pageref, \vref, e ogni altro comando per la cross reference, quindi in realtà non è importante dove questi oggetti siano veramente; l’importante è che tu non vi faccia riferimento con “… come si vede nella figura seguente …”. Comunque messi vicini nel testo sorgente, diventa facile copiarli in blocco e spostarli assieme un po’ prima o un po’ dopo in modo da ottenere risultati migliori. almeno tipograficamente.
Dimenticavo: forse lo fai già, e nel mio esempio minimo compilabile non era necessario, ma sarebbe opportuno che quando componi a due colonne usassi sempre il pacchetto fixltx2e che sistema un po’ di difettucci nella composizione a due colonne; se vuoi avere maggiore flessibilità nella collocazione di figure a giustezza piena, usa dblfloatfix (senza caricare fixltx2e) che ti permette di usare anche il codice di posizionamento b anche per le figure a giustezza piena.
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.