Font di default anche nei grafici di gnuplot

  • Creatore
    Topic
  • #85484
    Up
    0
    Down
    ::


    Ciao a tutti!
    Ho controllato in rete, per capire quale sia il font che latex usa di default e mi pare di capire che è il “Knuth’s Computer Modern”.
    Nel documento che sto scrivendo, devo inserire anche dei grafici (prodotti con Gnuplot in Linux Ubuntu).
    Vorrei usare lo stesso font per quello che scrivo in questi grafici.
    Per indicare il font da usare a Gnuplot, mi servirebbe sapere dovre trovare il file ttf (o chi per lui) del font che usa latex.
    Non riesco a trovarlo e un aiuto sarebbe molto gradito.

    Ciao e grazie in anticipo.

    p.s.:
    A margine vorrei anche capire come cambiare il font del documento.
    Ho provato con:
    `\usepackage{fontspec}
    \setmainfont{Arial}`
    ma mi dà l’errore:
    `! You must change your typesetting engine to, e.g., “xelatex” or “lualatex”
    ! instead of plain “latex” or “pdflatex”.`

Visualizzazione 23 filoni di risposte
  • Autore
    Risposte
    • #85485
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Se compili con pdfLaTeX, apri il file .log e va a leggere in ofndo: ci sono indicati tutti i font che pdfLaTeX ha usato per comporre il documento; sono completi di path; dubito che tu riesca a convincere GnuPlot a usare dei font così elaborati come quelli che vengono usati di default, se non altro perché i font di default usano i corpi ottici, mentre quasi tutti i font ttf gratuiti e quelli commerciali, in genere ne dispongono di uno solo, talvolta quattro, ma mai quasi una decina come i font di LaTeX.

        Sarebbe molto meglio se richiedessi a Gnulot di produrti al tabella delle ascisse e ordinate, e importassi queste tabelle con i mezzi propri di pgfplot che usa di default i font usati nel documento; c’è un capitolo tutto dedicato a pgfplots nell’Arte di scrivere con LaTeX

        Per cambiare i font dell’intero documento da comporre con pdfLaTeX (i comandi che hai provato servono per XeLaTeX — ti sconsiglio vivamente di usare un font senza grazie come font principale, come l’Arial: andresti contro ogni regola tipografica, eccetto quelle usate per produrre pieghevoli pubblicitari) Vale sempre la lettura dell‘Arte di scrivere con LaTeX, scaricabile dalla sezione Documentazione di questo sito, e della quale si parla virtualmente in ogni filone di discussione.

      • #85486
        Up
        0
        Down
        ::


        Concordo con OldClaudio: anziché comporre il documento con il font che gnuplot usa di default è molto più semplice seguire il percorso inverso, ovvero usare gnuplot e produrre un grafico con il font del documento.

        Il pacchetto pgfplots permette appunto di interagire con gnuplot (ricordati di compilare con l’opzione [tt]-shell-escape[/tt]); ad esempio, uno dei grafici nel capitolo 8 dell’Introduzione all’uso di TikZ in Ingegneria è appunto realizzato con gnuplot. E il font del grafico è lo stesso del documento!

        Ciao
        Claudio

      • #85487
        Up
        0
        Down
        ::


        Grazie per le risposte 🙂

        Non avevo pensato a controllare il file di log.
        Ora l’ho fatto, ma sto notando che di font ce ne sono elencati parecchi, ma del font Knuth’s Computer Modern non vi è traccia.
        La richiesta su come cambiare font a tutto il documento era meramente “didattica” e nasceva dal fatto che quei comandi mi danno errore.

        Il mio intento è, come appunto suggerite, proprio il contrario.
        Ossia, vorrei capire quale font è usato da Texlive per produrre il pdf e poi usare lo stesso font con Gnuplot.

        Relativamente alla splendida guida L’arte di scrivere con LaTeX, l’ho letta e ci faccio spesso riferimento in quanto scrivo i documenti senza l’ausilio di editor grafici (con gedit indomma). Nella versione che ho scaricato dal sito, a meno che proprio io non l’abbia vista, non c’è traccia di pgfplot.
        Provo a scaricarla nuovamente e a controllare.

        Grazie.

      • #85488
        Up
        0
        Down
        ::


        Ho scaricato la guida e risulta più aggiornata di quella che stavo usando (la mia è di febbraio 2012 e manca il capitolo sui grafici).
        Ad una prima occhiata sembra essere proprio quello che fa al caso mio.
        Grazie mille per i suggerimenti, utilissimi come sempre 🙂

      • #85489
        Up
        0
        Down
        ::

        l3on4rdo” post=84944Il mio intento è, come appunto suggerite, proprio il contrario.
        Ossia, vorrei capire quale font è usato da Texlive per produrre il pdf e poi usare lo stesso font con Gnuplot.

        Forse mi sono spiegato male: è possibile compilare un documento con un grafico realizzato con Gnuplot. Un esempio minimale con un font diverso dal solito Computer Modern:`
        \documentclass{article}
        \usepackage{amsmath}
        \usepackage{charter,pxfonts} % font
        \usepackage{pgfplots}
        \usepackage{lipsum}

        \def\cdf(#1)(#2)(#3){0.5*(1+(erf((#1-#2)/(#3*sqrt(2)))))}%
        % to be used: \cdf(x)(mean)(variance)

        \DeclareMathOperator{\CDF}{cdf}

        \begin{document}
        \lipsum[1]

        \begin{tikzpicture}
        \begin{axis}[%
        xlabel=$x$,
        ylabel=$\CDF(x)$,
        grid=major]
        \addplot[smooth,red] gnuplot{\cdf(x)(0)(1)};
        \addplot[smooth,blue]gnuplot{\cdf(x)(0.5)(1)};
        \addplot[smooth,green]gnuplot{\cdf(x)(1)(1)};
        \addplot[smooth,orange]gnuplot{\cdf(x)(2)(1)};
        \end{axis}
        \end{tikzpicture}

        \lipsum[2]
        \end{document}
        ` Mi raccomando: non invertire la chiamata di [tt]amsmath[/tt] con quella dei font perché sarebbe disastroso. Ipotizzando di avere chiamato [tt]test.tex[/tt] quel file, compilalo con: `
        pdflatex -shell-escape test.tex
        ` e non badare al warning su pgfplots. Vedrai che il grafico non i font di default di gnuplot (inseriti come immagine balza subito agli occhi: così invece, c’è uniformità… ecco perché dal mio punto di vista per documenti di ottima qualità – estetica almeno… il contenuto è un discorso a parte 😀 – l’uso di TikZ/pgfplots per immagini/grafici è necessario).

        l3on4rdo” post=84944
        Relativamente alla splendida guida L’arte di scrivere con LaTeX, l’ho letta e ci faccio spesso riferimento in quanto scrivo i documenti senza l’ausilio di editor grafici (con gedit indomma). Nella versione che ho scaricato dal sito, a meno che proprio io non l’abbia vista, non c’è traccia di pgfplot.
        Provo a scaricarla nuovamente e a controllare.

        Evidentemente hai una versione vecchia perché è dallo scorso anno che [tt]pgfplots[/tt] viene menzionato nell’Arte. Riscaricala e lo troverai senza dubbio.

        Ciao
        Claudio

      • #85490
        Up
        0
        Down
        ::


        Se vuoi continuare a usare gnuplot invece di pgfplots, ti consiglio caldamente il terminale epslatex. Produce due file, un .tex (da includere nel documento principale con [tt]\input[/tt]) e la figura vera e propria in formato EPS. Se compili con pdflatex e non con latex devi convertire la figura EPS in PDF, se usi recenti versioni di TeX Live questa operazione è svolta in automatico.

        Per motivi miei personali continuo a preferire gnuplot rispetto a pgfplots, ma questa è un’altra storia

      • #85491
        Up
        0
        Down
        ::


        Mi sa che mi sto perdendo 🙂
        Io avevo capito che con pgfplots avrei usato gnuplot per i grafici e poi il pacchetto di latex (pgfplots appunto) per scrivere sul grafico con lo stesso font usato da latex.
        Mi devo essere confuso (considerate che ovviamente ancora non ho avuto modo di leggere il capitolo 10 della guida, quello relativo ai grafici).

        A me andrebbe benissimo, di continuare ad usare gnuplot (anche per ammortizzare i tempi di apprendimento di pgfplots)… ma poi il problema del differente font come lo risolvo?

      • #85492
        Up
        0
        Down
        ::

        l3on4rdo” post=84951A me andrebbe benissimo, di continuare ad usare gnuplot (anche per ammortizzare i tempi di apprendimento di pgfplots)… ma poi il problema del differente font come lo risolvo?

        gnuplot, impostato al terminale epslatex, produce due file, di cui uno è la figura vera e propria, l’altro è un file TeX che contiene etichette e scritte varie. Tu includi il .tex nel tuo documento, in questo modo avrai in automatico lo stesso font del documento, qualunque esso sia. Non hai bisogno di usare pgfplots come intermediario.

      • #85493
        Up
        0
        Down
        ::


        Alternativa interessantissima (anche se praticamente mi sto sfogliando rapidamente la guida di pgfplots e vedo che è molto ben fatto).
        L’unica cosa che, se non ricordo male relativamente al formato epslatex, era relativo allo scarso numero di colori e alla resa grafica non buonissima.
        Ma, visto da dove arriva il consiglio 🙂 credo di ricordare male.

        Faccio alcune prove e ti faccio sapere.
        Grazie ancora.

      • #85494
        Up
        0
        Down
        ::

        l3on4rdo” post=84953Alternativa interessantissima (anche se praticamente mi sto sfogliando rapidamente la guida di pgfplots e vedo che è molto ben fatto).
        L’unica cosa che, se non ricordo male relativamente al formato epslatex, era relativo allo scarso numero di colori e alla resa grafica non buonissima.
        Ma, visto da dove arriva il consiglio 🙂 credo di ricordare male.

        Faccio alcune prove e ti faccio sapere.
        Grazie ancora.

        Non so quante curve hai intenzione di inserire, io non sono mai andato oltre 4-5 e comunque puoi specificare il colore delle curve con il codice RGB quindi il problema non si pone neanche. Per quanto riguarda la resa, non so a cosa ti riferisci. Qui feci vedere che a una prima occhiata è difficile distinguere un grafico fatto con pgfplots e uno fatto con gnuplot: http://www.guitex.org/home/forum/5-tex-e-latex/71851-il-disegno-programmato-nellarte-di-scrivere-con-latex?limit=15&start=180&lang=it#73093

      • #85495
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::

          Il mio intento è, come appunto suggerite, proprio il contrario.
          Ossia, vorrei capire quale font è usato da Texlive per produrre il pdf e poi usare lo stesso font con Gnuplot.

          Sei reticente… 🙂

          Vuoi usare i font usati da pdfLaTeX per comporre il documento; leggi la fine del file .log e non trovi i Knuth Computer Roman; infatti pdfLaTeX non è Word: perché in primis perché i font di default si chiamano Computer Modern, senza il nome Knuth che ne è l’autore; poi perché in fondo al file .log sono indicati i nomi dei file dei font, non i nomi dei font; dovrebbe essere evidente dal fatto che ne è indicato il loro percorso completo a partire dalla radice del disco. Per finire non citi nemmeno un nome di file fra quelli che hai letto nel file .log, quindi non possiamo sapere se si tratta dei Computer Modern, dei CM-super, dei Latin Modern, o di altri font.

          Siccome poi è meglio evitare i font di GnuPlot ed è meglio usare quelli di pdfLatex, qualunque questi siano, e comunque siano impostati con i comandi \usepackage (e non \setmainfont), sia la soluzione che ti ha indicato cfiandra sia quella che ti ha indicato Elrond vanno benissimo ed entrambe usano i font di pdfLaTeX senza che tu debba sapere come si chiamino.

          Una piccola collezione di nomi è indicata nella guida tematica Font e tipografia; ma nella mia distribuzione del sistema TeX i font che possono venire usati sono circa 14000, quindi è difficile dire quali un dato documento usi, se non si legge il preambolo, almeno nella parte dove si caricano i pacchetti per l’uso dei font.

        • #85496
          Liverpool
          Partecipante
            Up
            0
            Down
            ::


            Premessa: se hai deciso di seguire il metodo di @Elrond, allora leggere quanto sto per dire potrebbe confonderti le idee.

            Come ha spiegato @cfiandra, il pacchetto [tt]pgfplots[/tt] permette di richiamare [tt]gnuplot[/tt] direttamente dal sorgente LaTeX. In altre parole, quando compili il tuo documento, il compilatore apre un’istanza di [tt]gnuplot[/tt], esegue i calcoli e dà il risultato in pasto a [tt]pgfplots[/tt], che realizza il grafico con i font che hai scelto. Quindi non hai bisogno di creare prima il grafico con gnuplot. Sull’Arte questo metodo non è esposto per brevità, ma sulla guida di [tt]pgfplots[/tt] c’è, è spiegato bene e non è per niente difficile (ci sono riuscito anch’io!): cerca [tt]gnuplot[/tt] nel pdf della guida.

            Ciao

          • #85497
            Up
            0
            Down
            ::


            Vi ringrazio dei numerosi suggerimenti.
            Mi cimento e vi faccio sapere.

          • #85498
            Up
            0
            Down
            ::


            Ragazzi, dopo un pomeriggio a giocherellare con pgfplots… mi ha convinto.
            Al momento ho quasi risolto, nel senso che sono riuscito a fare il primo grafico (che è quello più semplice e per capirci, è analogo a questo).

            L’unica cosa che per il momento non riesco a fare, anche perché non ho trovato lumi nel manuale, è su come impostare i colori di una curva in “formato html”.
            E l’altro problema, che dovrò poi affrontare, è capire se poi questo grafico può essere trattato come un’immagine… nel senso che vorrei mettere un “caption” esplicativo sotto di esso.

            edit:
            Per la questione del caption, ho risolto… ma usando l’ambiente figure. Io vorrei però capire se si può mettere un caption direttamente con pgfplots.

          • #85499
            Liverpool
            Partecipante
              Up
              0
              Down
              ::


              `\documentclass{article}
              \usepackage{caption}
              \usepackage{pgfplots}
              \pgfplotsset{compat=1.8}
              \definecolor{mio}{HTML}{F023F0}

              \begin{document}
              \begin{figure}
              \centering
              \begin{tikzpicture}
              \begin{axis}
              \addplot [mio] coordinates {(0,0) (1,1)};
              \end{axis}
              \end{tikzpicture}
              \caption{Didascalia della figura}
              \end{figure}
              \end{document}`

              La gestione dei colori la trovi a pagina 142 del manuale e parla anche dell’HTML.

              Ciao

            • #85500
              Up
              0
              Down
              ::


              Grazie.
              Ok, allora i caption si gestiscono come stavo facendo.
              Riguardo i colori, ho letto la parte di documentazione che mi indichi. Per il momento provavo a mettere il codice html del colore direttamente dopo \addplot.
              Cerco di approfondire sulla guida, perché al momento mi risulta un po’ criptica questa parte sulla colorazione.

              Ciao.

              edit:
              Mi accetta un singolo \definecolor.
              Al secondo, come lo inserisco, mi dà errore 😯

            • #85501
              alegenn
              Partecipante
                Up
                0
                Down
                ::

                l3on4rdo” post=84973Grazie.
                Ok, allora i caption si gestiscono come stavo facendo.
                Riguardo i colori, ho letto la parte di documentazione che mi indichi. Per il momento provavo a mettere il codice html del colore direttamente dopo \addplot.
                Cerco di approfondire sulla guida, perché al momento mi risulta un po’ criptica questa parte sulla colorazione.

                Ciao.

                edit:
                Mi accetta un singolo \definecolor.
                Al secondo, come lo inserisco, mi dà errore 😯

                A me non succede:
                `\documentclass{article}
                \usepackage{caption}
                \usepackage{pgfplots}
                \pgfplotsset{compat=1.8}
                \definecolor{mio}{HTML}{F023F0}
                \definecolor{orange}{rgb}{1,0.5,0}

                \begin{document}
                \begin{figure}
                \centering
                \begin{tikzpicture}
                \begin{axis}
                \addplot [mio] coordinates {(0,0) (1,1)};
                \addplot [orange] coordinates {(0,1) (1,1)};
                \end{axis}
                \end{tikzpicture}
                \caption{Didascalia della figura}
                \end{figure}
                \end{document}`

              • #85502
                Up
                0
                Down
                ::


                Anche a me non succede se non definisco più di un colore con lo stesso sistema.
                Se provo a definirne due con il codice html, mi dà errore.
                La mia esigenza è proprio quella di definire una decina di colori
                (anche se poi ho capito che la colorazione è gestita dal pacchetto dvipsnames (con opzione xcolor) e questo mette a disposizione un sacco di colori, anche per nome)

              • #85503
                Liverpool
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Se non ci dai un esempio di codice, è difficile capire cos’è che non va. Perché io non ho nessun problema con più colori HTML e mi sembra normale.
                  Pensavo fosse scontato che la gestione dei colori è affidata al pacchetto [tt]xcolor[/tt]. D’altra parte lo dice anche nel paragrafo che ti ho consigliato di leggere.

                  Ciao

                • #85504
                  Up
                  0
                  Down
                  ::

                  l3on4rdo” post=84978Anche a me non succede se non definisco più di un colore con lo stesso sistema.
                  Se provo a definirne due con il codice html, mi dà errore.
                  La mia esigenza è proprio quella di definire una decina di colori
                  (anche se poi ho capito che la colorazione è gestita dal pacchetto dvipsnames (con opzione xcolor) e questo mette a disposizione un sacco di colori, anche per nome)

                  Semmai è l’esatto contrario: opzione [tt]dvipsnames[/tt] del pacchetto [tt]xcolor[/tt]. Tuttavia, poiché TikZ carica questo pacchetto e pgfplots carica TikZ, ne risulta che [tt]xcolor[/tt] sia caricato con pgfplots. Non vedendo il preambolo, come dice @Liverpool, al massimo si possono fare ipotesi forse senza centrare il vero problema.

                  Aggiungo, che [tt]xcolor[/tt] non ha solo l’opzione [tt]dvipsnames[/tt], ma anche altri gruppi di colore identificati da opzioni, perciò prima di definire una decina di colori rifletti se sia proprio necessario. Non c’entra molto con il discorso, ma giusto per test, prova a compilare questo esempio (la mia prima domanda in assoluto su TeX.SX 🙂 ): contiene alcune definizioni di colori in HTML. Quel codice non dovrebbe darti problemi.

                  Ciao
                  Claudio

                • #85505
                  Up
                  0
                  Down
                  ::


                  Scusate per la confusione tra opzione e nome del pacchetto 🙂
                  Al più presto posto un esempio di codice, per il momento ho risolto tramite i colori già messi a disposizione per nome.

                  Una domanda tecnica (nel senso che non so come funziona su questo forum) per gli amministratori: stanno venendo fuori dei dubbi relativi all’us di pgfplots (spostare gli assi e cose di “questo tipo”).
                  È preferibile aprire una discussione separata o posso chiedere in questa?

                • #85506
                  Up
                  0
                  Down
                  ::

                  l3on4rdo” post=84981Scusate per la confusione tra opzione e nome del pacchetto 🙂
                  Al più presto posto un esempio di codice, per il momento ho risolto tramite i colori già messi a disposizione per nome.

                  Una domanda tecnica (nel senso che non so come funziona su questo forum) per gli amministratori: stanno venendo fuori dei dubbi relativi all’us di pgfplots (spostare gli assi e cose di “questo tipo”).
                  È preferibile aprire una discussione separata o posso chiedere in questa?

                  Meglio aprire un nuovo topic 🙂

                  Ciao
                  Claudio

                • #85507
                  alegenn
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    Se c’è un nuovo topic è preferibile aprire una nuova discussione, cosicché chi legge il titolo del nuovo topic possa farsi un’idea del contenuto e possa aiutarti.
                    Ciao

                  • #85508
                    Up
                    0
                    Down
                    ::


                    Sì, infatti mi sarei regolato così, ma non ricordavo come funzionava su questo forum.
                    Ne ho aperta un’altra (e ho specificato meglio il titolo di questa).

                    Ora devo staccare, domani cerco di postare l’esempio di codice con colori html che mi dà problemi.
                    Grazie ancora, ciao.

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

                Go to top