条形图-对齐X符号坐标

条形图-对齐X符号坐标

我想请您帮助我对齐符号 x 坐标。
现在,它像条形图中间与单词中间对齐(IT、Elektrotechnické、Strojírenské 等)。有什么方法可以将条形图中间与单词末尾对齐吗?

因为这样会有点令人困惑。

非常感谢您的帮助。

在此处输入图片描述

\begin{tikzpicture}
\begin{axis}[
    width  = 16cm,
    height = 8cm,
    major x tick style = transparent,
    ybar=2*\pgflinewidth,
    bar width=6pt,
    ymajorgrids = true,
    ylabel = {Run time speed},
    symbolic x coords={IT,Elektrotechnické,Strojírenské,
    Architektura,Ekonomické,Sociální,Jiné},
    xtick = data,
    scaled y ticks = false,
    enlarge x limits=0.10,
    x tick label style={rotate=45},  
    ymin=0,
    legend cell align=left,
    legend style={
            at={(1,0.5)},
            anchor=south east,
            column sep=1ex
    }
]
    \addplot[style={bblue,fill=bblue,mark=none}]
        coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};

    \addplot[style={rred,fill=rred,mark=none}]
         coordinates {(IT,5) (Elektrotechnické,3) (Strojírenské,2) (Architektura,0) (Ekonomické,0) (Sociální,2) (Jiné,1)};

    \addplot[style={ggreen,fill=ggreen,mark=none}]
         coordinates {(IT,2) (Elektrotechnické,2) (Strojírenské,1) (Architektura,2) (Ekonomické,0) (Sociální,1) (Jiné,1)};

    \addplot[style={ppurple,fill=ppurple,mark=none}]
         coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};
      \addplot[style={zluta,fill=zluta,mark=none}]
         coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};
      \addplot[style={oran,fill=oran,mark=none}]
         coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};

    \legend{SG ResearchGroup,21.CentTech,SmartTech,SmartTechRG,SmGrigLab,ISCA}
\end{axis}
\end{tikzpicture}

答案1

由于您只添加了一个代码片段,而没有添加所有自定义颜色定义,因此我将颜色名称替换为默认名称。请尝试制作完整的示例。

您只需添加anchor=eastx tick label style。 (而您不需要使用\addplot [style={..}]\addplot [..]就足够了。)

代码输出

\documentclass[border=5mm]{standalone}
\usepackage[utf8]{inputenc}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
    width  = 16cm,
    height = 8cm,
    major x tick style = transparent,
    ybar=2*\pgflinewidth,
    bar width=6pt,
    ymajorgrids = true,
    ylabel = {Run time speed},
    symbolic x coords={IT,Elektrotechnické,Strojírenské,
    Architektura,Ekonomické,Sociální,Jiné},
    xtick = data,
    scaled y ticks = false,
    enlarge x limits=0.10,
    x tick label style={anchor=east,rotate=45},  
    ymin=0,
    legend cell align=left,
    legend style={
            at={(1,0.5)},
            anchor=south east,
            column sep=1ex
    }
]
    \addplot[blue,fill=blue,mark=none]
        coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};

    \addplot[red,fill=red,mark=none]
         coordinates {(IT,5) (Elektrotechnické,3) (Strojírenské,2) (Architektura,0) (Ekonomické,0) (Sociální,2) (Jiné,1)};

    \addplot[green,fill=green,mark=none]
         coordinates {(IT,2) (Elektrotechnické,2) (Strojírenské,1) (Architektura,2) (Ekonomické,0) (Sociální,1) (Jiné,1)};

    \addplot[purple,fill=purple,mark=none]
         coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};
      \addplot[black,fill=black,mark=none]
         coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};
      \addplot[orange,fill=orange,mark=none]
         coordinates {(IT,3) (Elektrotechnické,3) (Strojírenské,3) (Architektura,2) (Ekonomické,2) (Sociální,1) (Jiné,1)};

    \legend{SG ResearchGroup,21.CentTech,SmartTech,SmartTechRG,SmGrigLab,ISCA}
\end{axis}
\end{tikzpicture}
\end{document}

答案2

添加这些参数x tick label style={rotate=45, anchor=east, align=right,text width=3.5cm} 在此处输入图片描述

相关内容