PgfPlots는 x축 레이블을 중복합니다.

PgfPlots는 x축 레이블을 중복합니다.

X축에 반복되는 숫자가 있습니다. 내 코드는 다음과 같습니다.

\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}

그리고 여기 내 데이터 파일이 있습니다 -

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

이제 1.2.1에 대한 2개의 항목이 1.2.1.a 및 1.2.1.k로 이름이 바뀐 것을 볼 수 있습니다. 따라서 x축 눈금 레이블에서 이러한 a,b,c...,l을 방지하기 위해 xticklabels=코드에 명령을 추가했습니다. 그러나 추가한 모든 레이블이 표시되지는 않습니다. 그러나 이 행에 주석을 달고 xtick=data 행의 주석 처리를 제거하면 올바른 출력을 얻을 수 있지만 모든 항목에 대해 접미사 a,b,c...l이 모두 포함됩니다. 이 상황을 어떻게 극복할 수 있나요?

답변1

그러면 원하는 출력이 제공됩니다.

\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}

여기에 이미지 설명을 입력하세요

관련 정보