peppo” post=85425Ciao a tutti,
per la serie “a volte ritornano” avrei una richiesta per voi:
Sto componendo un barplot semplicissimo dove una linea dovrebbe indicare un valore soglia, di seguito il codice`
\documentclass{standalone}
\usepackage{pgfplots}\begin{document}
\begin{tikzpicture}
\begin{axis}[
title=Prova,
small,scale=1,
xbar,
enlarge y limits=1,
x tick label style={anchor=north,yshift=-0.5em},
xlabel style={yshift=-0.5em},
xlabel={Effetti},
symbolic y coords={A,B,C},
ytick=data]
\addplot coordinates {(5,A) (6,B) (3,C)};
\addplot[black,sharp plot,thick] coordinates {(4,A) (4,C)};
\end{axis}
\end{tikzpicture}
\end{document}
`come si vede il problema è che la linea va da A fino a C senza considerare l’effetto di enlarge limits. Io vorrei che la mia linea andasse da un estremo all’altro dell’asse. Se fosse possibile vorrei poi aggiungere una piccola scritta al di sopra della stessa.
Mi rendo conto che il problema sia davvero banale ma da solo non sono riuscito a risolverlo. Sapreste aiutarmi?Grazie.
AB
Puoi disegnare una linea normale sulla tela del grafico anziché trattarla con \addplot:
`\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
title=Prova,
small,scale=1,
xbar,
enlarge y limits=1,
x tick label style={anchor=north,yshift=-0.5em},
xlabel style={yshift=-0.5em},
xlabel={Effetti},
symbolic y coords={A,B,C},
ytick=data]
\addplot coordinates {(5,A) (6,B) (3,C)};
\draw[black,thick] (axis description cs:0.36,0) — (axis description cs:0.36,1);
\end{axis}
\end{tikzpicture}
\end{document}`
Il sistema di riferimento “axis description cs” funziona benone con le y (zero corrisponde alla’asse x ed uno corrisponde al limite superiore della tela), ma occorre regolare a mano l’ascissa (0.36 si avvivina alla posizione effettiva di 4).
Indagando ancora è possibile che la questione abbia una soluzione esatta.
Un saluto.
R.