Impossibile inserire node in pgfplots

  • Creatore
    Topic
  • #46363
    Up
    0
    Down
    ::


    Ciao a tutti,
    ho un paio di problemi con pgfplots. Il primo è che il seguente codice non viene compilato in quanto l’inserimento di node (ultime righe), crea probemi.
    `
    \documentclass[a4paper,11pt,fleqn]{scrreprt}

    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[italian]{babel}
    \usepackage{pgfplots}

    \begin{document}
    \begin{figure}[htbp]
    \centering
    \begin{tikzpicture}%
    \begin{axis}[
    width=14.cm,
    height=10.cm,
    xlabel={$T$ },
    ylabel={$\Delta$ [mm]},
    xmin=0,
    xmax=4.5,
    ymin=0,
    ymax=200,
    grid=major,
    legend style={legend pos=south east}]

    \legend{$\xi_{eq}=20.12\%$}%
    \addplot plot coordinates{%
    (0,0.00)
    (0.08917432,0.75)
    (0.1783486,4.22)
    (0.2,5.31)
    (0.3566973,16.88)
    (0.4,21.23)
    (0.5350459,37.98)
    (0.6,42.59)
    (0.8,56.78)
    (1,70.98)
    (1.2,85.18)
    (1.4,99.37)
    (1.6,113.57)
    (1.8,127.76)
    (2,141.96)
    (2.2,156.16)
    (2.4,170.35)
    (2.6,184.55)
    (2.663282,189.04)
    (2.8,189.04)
    (3,189.04)
    (3.2,189.04)
    (3.4,189.04)
    (3.6,189.04)
    (3.8,189.04)
    (4,189.04)
    };

    \addplot plot coordinates{%
    (0,189.04)
    (2.663282,189.04)
    (2.663282,0)
    };

    \node[small dot,pin=-30:{$(2.66,189.04)$}] at (axis description cs:2.663282,189.04) {};

    \end{axis}
    \end{tikzpicture}%
    \vspace{-.6cm}
    \caption{bla bla bla}
    \end{figure}
    \end{document}
    `

    Il secondo è che vorrei indicare sugli assi i valori in corrispondenza della linea blu tratteggiata (che potete vedere compilando il file senza la riga problematica). Se qualcuno sapesse indicarmi come fare gliene sarei molto grato, in quanto non sono riuscito a capirlo dal manuale di pgfplots.

    Grazie e buon fine settimana.

Visualizzazione 3 filoni di risposte
  • Autore
    Risposte
    • #46364
      Up
      0
      Down
      ::


      metti il nodo nel sistema di coordinate sbagliato e non definisci lo stile con cui vuoi disegnarlo (lo small dot). cambia in

      `\node[fill,circle,inner sep=3pt] at (axis cs:2.663282,189.04) {}; `

      e regola la dimensione del pallino con l’inner sep.
      ci sono i coordinate system per le label. per quello in verticale

      `\node at (yticklabel cs:0.9452) [anchor=west] {189};`

      e similmente per l’altro.
      come suggerisce il manuale di pgfplots, queste sono funzioni mutuate da tikz/pgf e puoi trovare tutte le informazioni necessarie nel relativo manuale.

    • #46365
      Up
      0
      Down
      ::


      Grazie mille.
      Per quanto riguarda la seconda riga di codice, però, a me non funziona. Mentre aspettavo risposta, comunque, ho risolto il problema in questo modo.
      `
      \begin{axis}[
      width=14.cm,
      height=10.cm,
      xlabel={$T$ },
      ylabel={$\Delta$ [mm]},
      xmin=0,
      xmax=4.5,
      ymin=0,
      ymax=200,
      grid=major,
      legend style={legend pos=south east},
      % SEGUE IL MODO CON CUI HO RISOLTO
      extra y ticks={189},
      extra y tick labels={\footnotesize 189.04},
      extra y tick style={grid=none},
      extra x ticks={2.663282},
      extra x tick labels={\footnotesize 2.66},
      extra x tick style={grid=none,tick label style={rotate=90,anchor=east}}]
      $ ecc. ecc.
      `

      Grazie ancora,
      Daniele

    • #46366
      Up
      0
      Down
      ::

      Grazie mille.
      Per quanto riguarda la seconda riga di codice, però, a me non funziona. Mentre aspettavo risposta, comunque, ho risolto il problema in questo modo.
      `
      \begin{axis}[
      width=14.cm,
      height=10.cm,
      xlabel={$T$ },
      ylabel={$\Delta$ [mm]},
      xmin=0,
      xmax=4.5,
      ymin=0,
      ymax=200,
      grid=major,
      legend style={legend pos=south east},
      % SEGUE IL MODO CON CUI HO RISOLTO
      extra y ticks={189},
      extra y tick labels={\footnotesize 189.04},
      extra y tick style={grid=none},
      extra x ticks={2.663282},
      extra x tick labels={\footnotesize 2.66},
      extra x tick style={grid=none,tick label style={rotate=90,anchor=east}}]
      $ ecc. ecc.
      `

      Grazie ancora,
      Daniele

      il tuo sistema va bene comunque.
      credo che sia un problema di versione del pacchetto di pgfplot, visto che la funzione che ho usato io e’ abbastanza giovane.
      hai la texlive aggiornata?

    • #46367
      Up
      0
      Down
      ::


      Io uso Miktex aggiornato. Effettivamente in un’altra discussione mi è stato detto che Miktex è una delle ultime versioni di Latex a essere aggiornato. Potrebbe proprio essere quello il problema.

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

Go to top