Tenho alguns números repetidos no meu eixo X. Aqui está meu código-
\begin{tikzpicture}
\pgfplotstableread{Figures/measurements.dat}
\datatable
\begin{axis}[symbolic x coords={1.2.1.a,1.2.3.b,1.1.3.c,1.1.1.d,1.3.1.e,1.3.3.f,3.3.3.g,1.3.3.h,1.1.3.i,1.1.1.j,1.2.1.k,1.3.1.l},
x tick label style={rotate=90,anchor=east},
grid=major,
xlabel=Processor Configuration,
ylabel=Clock Cycles,
legend pos=outer north east,
legend columns=1,
cycle list name=exotic,
%xtick=data,
xticklabels={1.2.1,1.2.3,1.1.3,1.1.1,1.3.1,1.3.3,3.3.3,1.3.3,1.1.3,1.1.1,1.2.1,1.3.1},
x label style={at={(0.5,-0.1)}},
]
\addplot table[y=App_Stop] from \datatable ;
\addlegendentry{App Stop};
\end{axis}
\end{tikzpicture}
E aqui está meu arquivo de dados -
Proc_config App_Stop
1.2.1.a 138
1.2.3.b 923
1.1.3.c 1708
1.1.1.d 923
1.3.1.e 138
1.3.3.f 923
3.3.3.g 923
1.3.3.h 1427
1.1.3.i 923
1.1.1.j 923
1.2.1.k 138
1.3.1.l 923
Agora você pode ver que tenho 2 entradas, por exemplo, para 1.2.1 renomeadas como 1.2.1.a e 1.2.1.k. Portanto, para evitar esses a,b,c...,l nos rótulos de escala do eixo x, adicionei o comando xticklabels=
no código. No entanto, ele não exibe todos os rótulos que adicionei. No entanto, se eu comentar esta linha e descomentar a linha xtick=data, obtenho a saída correta, porém ela possui todos os sufixos a,b,c...l para cada entrada. Como posso superar esta situação?
Responder1
Isso fornece a saída desejada:
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\pgfplotstableread{data.dat}
\datatable
\begin{axis}[symbolic x coords={1.2.1.a,1.2.3.b,1.1.3.c,1.1.1.d,1.3.1.e,1.3.3.f,3.3.3.g,1.3.3.h,1.1.3.i,1.1.1.j,1.2.1.k,1.3.1.l},
x tick label style={rotate=90,anchor=east},
grid=major,
xlabel=Processor Configuration,
ylabel=Clock Cycles,
legend pos=outer north east,
legend columns=1,
cycle list name=exotic,
xtick=data,
xticklabels={1.2.1,1.2.3,1.1.3,1.1.1,1.3.1,1.3.3,3.3.3,1.3.3,1.1.3,1.1.1,1.2.1,1.3.1},
x label style={at={(0.5,-0.1)}},
]
\addplot table[y=App_Stop] from \datatable ;
\addlegendentry{App Stop};
\end{axis}
\end{tikzpicture}
\end{document}