Problema con due figure affiancate

  • Creatore
    Topic
  • #98692
    Up
    0
    Down
    ::


    Ciao a tutti,
    sto cercando di inserire due figure affiancate ma ho un problema, le didascalie delle due figure sono infatti posizionate male (vedere figura allegata).
    Il codice utilizzato è il seguente:
    `\begin{figure}
    \centering
    \subfloat[][\emph{Le resistenze}.]
    {\includegraphics[width=0.3\textwidth]{\figspath cappelliera.png}} \quad
    \subfloat[][\emph{I profili di temperatura}.]
    {\includegraphics[width=0.5\textwidth]{\figspath cappelliera_profili_temperature.png}} \\
    \caption{Il sistema di resistenze impiegato e gli andamenti della temperatura del flusso principale per due differenti regimei di flusso.}
    \label{fig:cappelliera}
    \end{figure}`
    Personalmente non sono riuscito ad individuare alcun errore, anche perchè il codice l’ho preso dall’Arte e riadattato secondo le mie necessità.

    Avete qualche idea sul perchè succeda e soprattutto sul come poter risolvere il problema?

    Vi ringrazio anticipatamente.

    [attachment=1187]didascalie.png[/attachment]

    Attachments:
    You must be logged in to view attached files.
Visualizzazione 24 filoni di risposte
  • Autore
    Risposte
    • #98693
      Up
      0
      Down
      ::


      Non vorrei dire una boiata perchè io stesso stò ancora imparando, ma dovrebbe essere `{\centering contenuto vario}`.

    • #98694
      Up
      0
      Down
      ::


      Magari sbaglio ma quel centering non serve a centrare il blocco di immagini (due affiancate) rispetto alla pagina?

    • #98695
      Up
      0
      Down
      ::


      Scusami ho capito ora cosa intendevi… anche aggiungendo le graffe il problema non si risolve. Facendo altri tentativi, anche con altre immagini, la cosa sembra dipendere dalla larghezza che specifico, ma non capisco il perchè, sembra che la cosa accada un pò a caso. Avolte capita, a volte no.
      La cosa assurda è che ho già usato questo codice più volte in altre situazioni e senza problemi.

    • #98696
      alegenn
      Partecipante
        Up
        0
        Down
        ::

        Bonalumi” post=98236Scusami ho capito ora cosa intendevi… anche aggiungendo le graffe il problema non si risolve. Facendo altri tentativi, anche con altre immagini, la cosa sembra dipendere dalla larghezza che specifico, ma non capisco il perchè, sembra che la cosa accada un pò a caso. Avolte capita, a volte no.
        La cosa assurda è che ho già usato questo codice più volte in altre situazioni e senza problemi.

        Con questo codice non ottengo problemi:
        `\begin{figure}
        \centering
        \subfloat[][\emph{Le resistenze}.]
        {\includegraphics[width=0.3\textwidth]{cappelliera.png}} \quad
        \subfloat[][\emph{I profili di temperatura}.]
        {\includegraphics[width=0.5\textwidth]{cappelliera_profili_temperature.png}}
        \caption{Il sistema di resistenze impiegato e gli andamenti della temperatura del flusso principale per due differenti regimi di flusso.}
        \label{fig:cappelliera}`
        ho rimosso l’ultimo doppio backslahs (\\) e corretto una svista di battitura.
        Saluti

      • #98697
        Up
        0
        Down
        ::


        Scusa ma a me con la tua soluzione non funziona proprio. Mi da l’errore: Not in outer par mode. Possibile che abbia dimenticato qualche pacchetto? Uso già graphicx e subfig.

      • #98698
        Up
        0
        Down
        ::

        Bonalumi” post=98252Scusa ma a me con la tua soluzione non funziona proprio. Mi da l’errore: Not in outer par mode. Possibile che abbia dimenticato qualche pacchetto? Uso già graphicx e subfig.

        Abbi pazienza, ma senza mostrare un esempio minimo di codice non ti si può proprio rispondere. Usa il pacchetto mwe per inserire immagini di repertorio. Con esempio minimo intendo un documento con documentclass, i pacchetti rilevanti (non tutti quelli della tesi) e il codice della figura.

        Considera che 9 volte su 10 la procedura di creare un esempio minimo permette di identificare il problema.

        Ciao
        Claudio

      • #98699
        Up
        0
        Down
        ::


        Ho allegato un file zip con il mio main (thesis.tex), un capitolo a caso (prova1.tex), e le immagini che mi interessano. Non so se era quello che volevi, ma non avendolo mai fatto e avendo un pò di fretta ho cercato un modo che conoscessi. Nel caso non vada bene fammi sapere che provo rifarlo. Grazie mille.

        [attachment]prova.zip[/attachment]

      • #98700
        Up
        0
        Down
        ::


        Ho creato un archivio zip con il mio main (thesis.tex), un capitolo di prova (prova1.tex) e una cartella con le immagini che mi interessano. Purtroppo non ho mai fatto quel che mi hai chiesto e avendo fretta ho cercato un modo che conoscessi. Nel caso non vada bene provvederò a fare come dici. Intanto grazie.

        [attachment=1188]prova.zip[/attachment]

        Attachments:
        You must be logged in to view attached files.
      • #98701
        Up
        0
        Down
        ::

        Bonalumi” post=98259Ho creato un archivio zip con il mio main (thesis.tex), un capitolo di prova (prova1.tex) e una cartella con le immagini che mi interessano. Purtroppo non ho mai fatto quel che mi hai chiesto e avendo fretta ho cercato un modo che conoscessi. Nel caso non vada bene provvederò a fare come dici. Intanto grazie.

        [attachment=1188]prova.zip[/attachment]

        Dunque, questo è un esempio minimo: `
        \documentclass[a4paper]{book}
        \usepackage{graphicx}
        \usepackage{subfig}
        \usepackage{mwe}

        \begin{document}

        \begin{figure}
        \centering
        \subfloat[Le resistenze]
        {\includegraphics[scale=0.25]{example-image}}
        \qquad%
        \subfloat
        {\includegraphics[scale=0.25]{example-image}}
        \caption{Il sistema di resistenze impiegato e gli andamenti della temperatura del flusso principale per due differenti regimi di flusso.}
        \label{fig:cappelliera}
        \end{figure}
        \end{document}
        ` Il problema tuo è molto probabilmente dovuto alle dimensioni differenti delle figure che stai includendo. In effetti, anche la documentazione del pacchetto subfig lo dice:

        6 Frequently Asked Questions (FAQs)
        The ten most frequently asked questions about the subfig package are:
        6.1 “My sub-floats are not aligned along their bottoms. Why?”
        Remember! The subfig package aligns sub-floats along their baselines with the sub- caption (if any) sticking out above or below. The above problem is usually due to using a minipage, tabular or array environment that, by default, places the baseline at the center of the box that it generates. If the two sub-floats are different sizes, or if one sub-float is generated in some other way with its baseline not at the expected place (perhaps an \includegraphics), then the sub-float will be misaligned. One solution is to use the environment options ‘[t]’ or ‘’ to move the baseline to the top or bottom rather than the center.

        Ciao
        Claudio

      • #98702
        Up
        0
        Down
        ::


        Ho provato a seguire il consiglio presente nella documentazione di subfig, ma anche dando le due opzioni ([t] o ) dopo subfloat, non pare cambiare nulla. A questo punto che faccio? Devo ridimensionare tutte le immagini che ono sono grandi uguali? Mi sembra assurdo…

      • #98703
        Up
        0
        Down
        ::

        Bonalumi” post=98273Devo ridimensionare tutte le immagini che ono sono grandi uguali? Mi sembra assurdo…

        Guarda, ho dato un’occhiata alle due immagini in questione: non sono per nulla grandi uguali.

        Controlla tu stesso: `\documentclass{article}
        \usepackage{graphicx}
        \usepackage[hmargin=1cm]{geometry}% solo per questo documento

        \begin{document}

        \includegraphics[width=0.3\textwidth]{./immagini/cappelliera}%
        \includegraphics[width=0.5\textwidth]{./immagini/cappelliera_profili_temperature}

        \end{document}` A me il risultato è:

        [attachment=1189]ScreenShot2014-11-28at2.50.45PM.png[/attachment]

        Ciao
        Claudio

        Attachments:
        You must be logged in to view attached files.
      • #98704
        Up
        0
        Down
        ::


        Chiedo scusa, ma si è trattato di un errore di battitura! Intendevo dire che sapevo benissimo che le due immagini NON sono grandi uguali. Quel che mi domando è come risolvere il problema. Mica dovrò ridimensionare tutte le immagini che intendo affiancare, affinchè risultino grandi uguali? Sarebbe un lavoraccio, nonché una perdita di tempo non indifferente, senza considerare i problemi legati alla perdita di qualità delle immagini.

        Giusto per essere chiari, le opzioni [t] e sono da inserire in questo modo:
        `\subfloat[t][\emph{Le resistenze}.\label{fig:cappelliera}]`
        oppure
        `\subfloat[\emph{Le resistenze}.\label{fig:cappelliera}]`
        giusto?

      • #98705
        LuglioM26
        Partecipante
          Up
          0
          Down
          ::


          Ciao,

          se restringi i margini dx e sx tutto si risolve. Il motivo tecnico mi sfugge!

          `
          \usepackage

          {geometry}
          `

          Stefano

        • #98706
          Up
          0
          Down
          ::


          Purtroppo non posso modificare i margini della tesi, sono definit nel formato a quanto so e li devo rispettare. 😕

        • #98707
          LuglioM26
          Partecipante
            Up
            0
            Down
            ::


            Allora, sembra che l’unica cosa che puoi fare è quella di avere figure con le stesse dimensioni.

            `
            \begin{figure}[ht]
            \centering
            \subfloat[][\emph{Le resistenze}.]{\includegraphics[height=6.00cm,width=6.00cm]{cappelliera.jpg}} \hspace{0.5cm}
            \subfloat[][\emph{I profili di temperatura}.]{\includegraphics[height=6.00cm,width=6.00cm]{cappelliera_profili_temperature.jpg}}
            \caption{Il sistema di resistenze impiegato e gli andamenti della temperatura del flusso principale per due differenti regimi di flusso.}
            \label{fig:cappelliera}
            \end{figure}
            `

            Stefano

          • #98708
            Up
            0
            Down
            ::


            Non voglio fare il rompiscatole, ma, al di la del fatto che in questo modo deformo le immagini, questa soluzione funziona in questo specifico caso e basta. Ho provato ad usare la stessa soluzione in un caso con tre immagini affiancate e le didascalie presentano un problema simile (la prima delle tre risulta in posizione centrale e le altre due sono spostate a destra di conseguenza, con l’ultima che esce dal foglio), ma non è servito a nulla, il problema rimane. La cosa strana è che in questo caso le immagini hanno pure dimensioni molto simili tra loro.

          • #98709
            alegenn
            Partecipante
              Up
              0
              Down
              ::

              Bonalumi” post=98280Non voglio fare il rompiscatole, ma, al di la del fatto che in questo modo deformo le immagini, questa soluzione funziona in questo specifico caso e basta. Ho provato ad usare la stessa soluzione in un caso con tre immagini affiancate e le didascalie presentano un problema simile (la prima delle tre risulta in posizione centrale e le altre due sono spostate a destra di conseguenza, con l’ultima che esce dal foglio), ma non è servito a nulla, il problema rimane. La cosa strana è che in questo caso le immagini hanno pure dimensioni molto simili tra loro.

              Vediamo se ho capito: tu hai immagini di dimensioni diverse, con rapporto altezza/larghezza diverso, non vuoi deformarle, ma vuoi che risultino “alte” uguali e larghe “uguali” (o quasi) in maniera tale che le relative didascalie siano allineate? E il tutto con un’unico codice applicato a tutte le tue coppie/terne di immagini?

              Se ho capito correttamente, mi viene da pensare che tutto ciò sia molto DIFFICILE.

            • #98710
              Up
              0
              Down
              ::


              No no assolutamente… a me bastarebbe che fossero affiancate e le relative didascalie risultassero tra loro allineate, susllo stesso piano diciamo. Se poi le figure non sono grandi uguali non mi interessa, non era mia intenzione (non so se questo risultasse in qualche modo implicito nel mio codice, in tal caso mi scuso).
              Ovviamente ciò che dici sarebbe impossibile semplicemente per una questione di proporzioni. Certo se riuscissi ad avere le due immagini della stessa altezza, ovviamente con larghezze diverse sarebbe meglio. Per altro in un altro caso sono già riuscito a fare questa cosa. Non capisco perchè a volte funzioni ed altre no.

              Ricapitolando: mi basta che le due immagini siano affiancate e sotto ciascuna compaia la relativa didascalia. Se poi è possibile renderle alte uguali tanto meglio.

              EDIT: Per esser più chiaro su ciò che intendevo fare con il codice da me scritto: pensavo semplicemente di specificare una larghezza (scelta un pò causalmente ad essere onesti) per ciascuna immagine, giusto perchè ci stessero affiancate. Mi aspettavo semplicemente che LaTeX poi si occupasse di allineare le due immagini in basso o in alto, poco importa, ognuan con le rispettive proporzioni, e che ponesse le due didascalie sullo stesso piano.

            • #98711
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                No, c’è un problema che apapre evidente se lacchiudi ciascun \includegraphics con i suoi argomenti nell’argomento un un comando \frame; questo comando disegna esplicitamante il contorno della figura che incolrpori, cosi come modificata dallae opzioni del suo \includegraphics:`\documentclass[a4paper]{book}
                \usepackage{graphicx}
                \usepackage{subfig}
                \usepackage{mwe}

                \begin{document}

                \begin{figure}
                \centering
                \subfloat[Le resistenze]
                {\frame{\includegraphics[height=30mm]{cappelliera}}}
                \qquad%
                \subfloat
                {\frame{\includegraphics[height=30mm]{cappelliera_profili_temperature}}}
                \caption{Il sistema di resistenze impiegato e gli andamenti della temperatura del flusso principale per due differenti regimi di flusso.}
                \label{fig:cappelliera}
                \end{figure}
                \end{document}`
                Vedi subito che la figura cappelliera_profili_temperature.jpg (che pessima idea quella di usare gli underscore nei nomi die file; non sempre quegli underscore sono innocui; usa piuttosto un semplice trattino non ribassato) non è scontornata. Prova con la figura che ti allego, che è scontornata; vedrai che l’indicazione della variabile delle ascisse è esattamante allo stesso livello del fondo della figura cappelliera.jpg.
                [attachment=1190]cappelliera-profili-temperature-cropped.jpg[/attachment]

                Natiralmente l’effetto visivo continua ad essere di due figura disallineate, perché quella di destra è piuttosto vuota sotto, ma se prendi un righello sono perfettamente allineate.
                [attachment=1191]FigureAffiancate-cropped.pdf[/attachment]

                PS: se puoi modifica il diagramma delle temperature mettendo in corsivo i simboli delle grandezze fisiche t e T

                Attachments:
                You must be logged in to view attached files.
              • #98712
                Up
                0
                Down
                ::


                Purtroppo nemmeno questa soluzione funziona!!! Oltre al fatto di produrre un fastidioso contorno nero (vedere figura allegata), le didascalie sono ancora errate. In questo caso l’altezza specificata è di 6 cm, usando quella de te specificata OldClaudio (30 mm) il problema addirittura peggiora, le didascalie sono ancora più a destra e addirittura si sovrappongono!

                Per quanto riguarda il problema dei nomi non sapevo potesse causare problemi, anzi ho sempre usato l’underscore, anche in altri contesti. Spero non sia questa la causa perchè sarebbe un casino rinominare tutte le immagini e i relativi riferimenti nella tesi.

                EDIT: T i ringrazio per il suggerimento relativo al diagramma delle temperature, ma purtroppo dispongo solo dell’immagine e dunque non posso modificarlo.

                [attachment=1192]didascalie-errate.png[/attachment]

                Attachments:
                You must be logged in to view attached files.
              • #98713
                OldClaudio
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Il fastidioso bordo nero attorno alla figura serve solo provvisioriamente per mettere in luce il fatto ce la figura nnon è scontornata, ma non bisogna usarlo nella bella copia; è solo uno strumento, non è un elemento della figura.

                  Vedo che non hai fatto al prova con il mio file dove el didascalie sono perfettamante a posto; magari non sono a posto se usi un dimensionamento delel figure molto più grande di quello che ho usato io.

                  Con il mio codice a me le figure vengono affiancate fino ad una altezza specificiata in 60 mm; poi vengono sovrapposte, ma le didascalie restano sempre centrate sotto a ciascuna figura.

                  [attachment=1193]FigureAffinacate60mm.jpg[/attachment]

                  Attachments:
                  You must be logged in to view attached files.
                • #98714
                  LuglioM26
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    Ciao,

                    oltre la soluzione di OldClaudio hai altre 3 possibilità:

                    1 – ridimensioni e rendi uguali le immagine (opzione scartata)

                    2 – segui la soluzione a pag 44, paragrafo 5.4 del pacchetto subfig

                    3 – leggi la documentazione del pacchetto floatrow

                    Stefano

                  • #98715
                    Up
                    0
                    Down
                    ::


                    Scusa OldClaudio… ho compreso ora il problema della figura scontornata e l’utilità del frame. Ho riprovato con l’immagine che mi hai inviato tu, ma il risultato non cambia, ne con un altezza di 6 cm (quella in figura), ne con una di 30 mm. Mi domando a questo punto perchè il problema si presenti solo a me. 😕

                    [attachment=1194]didascalie-errate.jpg[/attachment]

                    Attachments:
                    You must be logged in to view attached files.
                  • #98716
                    GKT
                    Partecipante
                      Up
                      0
                      Down
                      ::

                      Bonalumi” post=98307Scusa OldClaudio… ho compreso ora il problema della figura scontornata e l’utilità del frame. Ho riprovato con l’immagine che mi hai inviato tu, ma il risultato non cambia, ne con un altezza di 6 cm (quella in figura), ne con una di 30 mm. Mi domando a questo punto perchè il problema si presenti solo a me. 😕

                      Ho fatto una prova con il tuo esempio. Il problema deriva dall’opzione`width=\columnwidth` passata al pacchetto caption. Elimina l’opzione e il risultato sarà coerente con gli esempi che ti sono già stati indicati.

                      Lorenzo

                    • #98717
                      Up
                      0
                      Down
                      ::


                      Ti ringrazio GKT! Era proprio quello il problema, infatti ora anche le altre immagini che davano problemi hanno le caption allineate. Direi che il problema è risolto!

                      Ovviamente un grazie anche a tutti gli altri che hanno provato a darmi una mano!

                  Visualizzazione 24 filoni di risposte
                  • Devi essere connesso per rispondere a questo topic.

                  Go to top