Re: Le mie (dis)avventure con TikZ

#96757
lorenzo.pantieri
Partecipante
    Up
    0
    Down
    ::

    cfiandra” post=98698
    Ci credo sia un delirio: non sfrutti minimamente le informazioni che i nodi ti danno.

    Il problema principale in qualsiasi disegno è posizionare gli elementi: o lo fai a mano (il tuo approccio) o sfrutti metodi intelligenti che il software ti mette a disposizione. In questo caso, tu hai inserito in un nodo la tua equazione: ottimo! Vuol dire che di quel nodo conosci tutti i bordi e ci puoi accedere con la sintassi [tt]nome nodo.ancora[/tt]. Per ottenere i punti intermedi ai bordi puoi sfruttare la libreria calc.

    Ringrazio con enorme ritardo Claudio per le sue indicazioni, perfette. Ma ecco un altro problema che riguarda il disegno di un arco (cosa che mi risulta sempre indigesta).

    `\begin{tikzpicture}[font=\small]
    \begin{axis} [width=0.55\textwidth,scale mode=scale uniformly,
    axis lines=middle,
    xmin=-5,xmax=5,ymin=-5,ymax=5,
    enlargelimits,
    xtick={-5,…,5},
    ytick={-5,…,5},
    xticklabels={},
    yticklabels={},
    xlabel=$x$,
    ylabel=$y$,grid]

    \addplot [domain=-10:10, samples=200, restrict y to domain=-30:30,smooth,grafico] {x-1};

    \draw [->] (axis cs:2,0) arc (0:45:1);

    \end{axis}
    \end{tikzpicture}`
    Quello che voglio fare è “mettere in evidenza l’angolo formato dalla retta con l’asse x”, ovvero disegnare un arco partendo dal punto (2,0) che termini sulla retta. Perché il codice non funziona? Come fare?

    Tempo fa Liverpool mi suggerì per un problema analogo un codice del tipo:
    `\pgfplotsextra{\pgfmathsetmacro{\pd}{\pgfplotsunitylength/(10*\pgfplotsunitxlength)}}
    \draw [->] (axis cs:1,0) ++({atan(2*ln(2)*\pd)}:40mm) arc ({atan(2*ln(2)*\pd)}:{atan(3*\pd)}:40mm);
    `
    ma non lo capisco, quindi non so usarlo.

    Grazie anticipate!
    L.

    Go to top