[RISOLTO] Cambiare il font dei numerini sugli istogrammi

  • Questo topic ha 4 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 9 anni, 5 mesi fa da Doc.
  • Creatore
    Topic
  • #110126
    Doc
    Partecipante
      Up
      0
      Down
      ::


      Cari amici,
      ecco un esempio minimale:
      `
      % !TeX encoding = UTF-8
      % !TeX TS-program = xelatex
      % !TeX spellcheck = it_IT

      \documentclass{article}
      \usepackage{libertine}
      \usepackage{tikz,pgfplots}
      \usepgfplotslibrary{groupplots}

      \pgfplotsset{%
      compat=1.9,
      tick label style={font=\footnotesize\rmfamily},
      every axis label={font=\footnotesize\rmfamily},
      legend style={font=\footnotesize\rmfamily,draw=none},
      label style={font=\footnotesize\rmfamily},
      ylabel style={font=\footnotesize\rmfamily},
      xticklabel style={rotate=90,font=\footnotesize\rmfamily},
      yticklabel style={font=\footnotesize\rmfamily},
      nodes near coords style={font=\footnotesize},
      }

      \begin{document}
      \begin{figure}[th]
      \centering
      \begin{tikzpicture}
      \begin{axis}[
      ybar = 0.6,
      width=1.1\textwidth,
      height=0.5\textheight,
      xtick={0,1,2,3,4,5,6,7,8,9,10,11,12},
      xticklabels={200 a.~C.,1 d.~C.,200,400,600,800,1000,1100,1200,1300,1400,1500,1600,1700},
      nodes near coords,
      axis x line*=bottom,
      y axis line style={opacity=0},
      yticklabels={\empty},
      ytick style={draw=none},
      ]
      \addplot [ybar,bar width=8pt,fill=blue,draw=black,]
      coordinates{
      (0,26)
      (1,31)
      (2,36)
      (3,31)
      (4,26)
      (5,29)
      (6,36)
      (7,48)
      (8,61)
      (9,79)
      (10,60)
      (11,81)
      (12,100)
      };
      \end{axis}
      \end{tikzpicture}
      \end{figure}
      \end{document}
      `

      Come si può notare il font usato sui numerini sopra gli istogrammi non coincide con il [tt]libertine[/tt]. Le soluzioni trovate sul web non paiono funzionare.

      Potete suggerirmi una soluzione?
      Ciao e grazie mille anticipate,
      Domenico

    Visualizzazione 3 filoni di risposte
    • Autore
      Risposte
      • #110127
        robitex
        Amministratore del forum
          Up
          0
          Down
          ::

          Doc” post=110338Cari amici,
          ecco un esempio minimale:
          `
          % !TeX encoding = UTF-8
          % !TeX TS-program = xelatex
          % !TeX spellcheck = it_IT

          \documentclass{article}
          \usepackage{libertine}
          \usepackage{tikz,pgfplots}
          \usepgfplotslibrary{groupplots}

          \pgfplotsset{%
          compat=1.9,
          tick label style={font=\footnotesize\rmfamily},
          every axis label={font=\footnotesize\rmfamily},
          legend style={font=\footnotesize\rmfamily,draw=none},
          label style={font=\footnotesize\rmfamily},
          ylabel style={font=\footnotesize\rmfamily},
          xticklabel style={rotate=90,font=\footnotesize\rmfamily},
          yticklabel style={font=\footnotesize\rmfamily},
          nodes near coords style={font=\footnotesize},
          }

          \begin{document}
          \begin{figure}[th]
          \centering
          \begin{tikzpicture}
          \begin{axis}[
          ybar = 0.6,
          width=1.1\textwidth,
          height=0.5\textheight,
          xtick={0,1,2,3,4,5,6,7,8,9,10,11,12},
          xticklabels={200 a.~C.,1 d.~C.,200,400,600,800,1000,1100,1200,1300,1400,1500,1600,1700},
          nodes near coords,
          axis x line*=bottom,
          y axis line style={opacity=0},
          yticklabels={\empty},
          ytick style={draw=none},
          ]
          \addplot [ybar,bar width=8pt,fill=blue,draw=black,]
          coordinates{
          (0,26)
          (1,31)
          (2,36)
          (3,31)
          (4,26)
          (5,29)
          (6,36)
          (7,48)
          (8,61)
          (9,79)
          (10,60)
          (11,81)
          (12,100)
          };
          \end{axis}
          \end{tikzpicture}
          \end{figure}
          \end{document}
          `

          Come si può notare il font usato sui numerini sopra gli istogrammi non coincide con il [tt]libertine[/tt]. Le soluzioni trovate sul web non paiono funzionare.

          Potete suggerirmi una soluzione?
          Ciao e grazie mille anticipate,
          Domenico

          Ciao,
          il fatto è che quelle etichette sono composte nel modo matematico.
          Ho trasformato il tuo MWE in LuaLaTeX (sono digiuno XeLaTeX) così:
          `% !TeX program = lualatex

          \documentclass[8pt]{article}

          \usepackage{fontspec}
          \usepackage{unicode-math}

          \defaultfontfeatures{Ligatures=TeX}
          \setmainfont{Linux Libertine O}
          \setmathfont{Linux Libertine O}

          \usepackage{pgfplots}
          \usepgfplotslibrary{groupplots}

          \pgfplotsset{%
          compat=1.14,
          legend style={draw=none},
          xticklabel style={rotate=90}
          }

          \pagestyle{empty}

          \begin{document}
          \begin{figure}[th]
          \centering
          \begin{tikzpicture}
          \begin{axis}[
          ybar = 0.6,
          width=1.1\textwidth,
          height=0.5\textheight,
          xtick={0,1,2,3,4,5,6,7,8,9,10,11,12},
          xticklabels={200 a.~C.,1 d.~C.,200,400,600,800,1000,1100,1200,1300,1400,1500,1600,1700},
          nodes near coords,
          axis x line*=bottom,
          y axis line style={opacity=0},
          yticklabels={\empty},
          ytick style={draw=none},
          ]
          \addplot [ybar,bar width=8pt,fill=blue,draw=black,]
          coordinates{
          (0,26)
          (1,31)
          (2,36)
          (3,31)
          (4,26)
          (5,29)
          (6,36)
          (7,48)
          (8,61)
          (9,79)
          (10,60)
          (11,81)
          (12,100)
          };
          \end{axis}
          \end{tikzpicture}
          \end{figure}
          \end{document}`

          e credo funzioni.
          Devi quindi impostare il font che desideri in XeLaTeX per la matematica.
          R.

        • #110128
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::



            @robitex
            , se provi a compilare il tuo codice con xelatex, constati che si compila esattamente come con lualatex…

            Salvo piccole imperfezioni, percepibili solo da chi ha occhi allenati, se non si usano comandi lua e \directlua, i file compilabili con lualatex sono compilabili anche da xelatex, e viceversa. Ci sono altre differenze. oltre al linguaggio lua, che rendono i due programmi diversi, ma di solito sono utili sono ad utenti molto avanzati. Per esempio lualatex non ha tutte le sillabazioni delle lingue preintallate nel suo formato lualatex.fmt, ma è in grado di leggere i file di sillabazione in real time; xelatex, come d’altra parte anche pdflatex, invece ha bisogno che tutte le lingue siano già preinstallate nel formato. È ovvio che questa, ed altre differenze di questo tipo, sono importanti solo per chi scrive classi o pacchetti, non per l’utente normale che li usa solo per comporre i propri documenti.

            Ne caso specifico ha fatto benissimo a specificare a @Doc l’impostazione dei font Libertine con i comandi specifici di xelatex/lualatex, perché @Doc aveva usato i il pacchetto libertine che va bene “solo” per pdflatex, nel senso che usa i font virtuali a 256 caratteri predisposti per pdflatex, impedendo l’accesso alle centinaia di caratteri disponibili con i font OpenType (anche se in qualche modo, usando xelatex o lualatex, sono disponibili comandi per accedere a glifi insoliti — paragrafo 5 della documentazione di libertine.sty).

          • #110129
            robitex
            Amministratore del forum
              Up
              0
              Down
              ::


              Ciao Claudio,
              in effetti compilavo il MWE in XeLaTeX ma non so perché, la compilazione attende diversi secondi subito dopo aver caricato la classe e poi riprende.
              Anche per questo ho tradotto l’esempio in LuaLateX.

              Grazie mille.
              R.

            • #110130
              Doc
              Partecipante
                Up
                0
                Down
                ::


                Grazie mille ad entrambi!

                A @robitex, per avermi indirizzato verso la matematica.
                A @OldClaudio per avermi chiarito una questione che non mi era mai stata tanto perspicua. Vero è che di norma uso [tt]fontspec[/tt], ma non so come mai in quel documento stavo usando [tt]libertine[/tt]. Forse per “semplificare” il codice? Boh!

                Ad ogni modo, metto RISOLTO nel titolo e ribadisco i ringraziamenti!

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

            Go to top