旧描述和代码

旧描述和代码

我有一个包含两个主条形图的条形图(黑色,x 勾)。两者中的每一个bars都由几个不同的sub-bars(填充的 resp. 模式)指定。由于第一个条形图x-coordinate 1由其他子条形图描述,因此第二个条形图bar留下x-coordinate 2 pgfplots了混乱的空间,我不想出现这种情况。

\documentclass[border=9,tikz]{standalone}
    \usepackage{pgfplots}
        \pgfplotsset{compat=1.14}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[ybar,enlarge x limits=.5]
            \addplot[fill=magenta]coordinates{(1,9) (2,8)};
            \addplot[fill=red    ]coordinates{(1,7)};
            \addplot[fill=yellow ]coordinates{(1,4)};
            \addplot[fill=green  ]coordinates{(2,6)};
            \addplot[fill=cyan   ]coordinates{(2,4)};
            \addplot[fill=blue   ]coordinates{(2,3)};
            \legend{1,2,3,4,5,6}
        \end{axis}
    \end{tikzpicture}
\end{document}

旧描述和代码

现在我想将三个条形图(编号 4、5、6)移动到尽可能靠近黑条的位置,使条形图位于 x-tick“一”处。

是否有可能将它们3 bars 28pt= 2* 5pt + 2* 2,5pt + 5pt两个条形的空间和相应的条形间距)向左移动?

这是我的 MWE:

\documentclass{article}

\usepackage[ngerman]{babel}
\usepackage[ansinew]{inputenc}                              
\usepackage[T1]{fontenc}  
\usepackage{tikz,pgf}
\usepackage{pgfplots}
\usepackage{float}                                                  

\usepgfplotslibrary{dateplot, statistics}
\usetikzlibrary{patterns}

\pgfplotsset{compat=1.8,legend style={cells={anchor=west},
 legend pos=outer north east}

\begin{document}

\begin{figure}[H]
\centering
\begin{tikzpicture}
\begin{axis}[%
    ybar=5pt,
    xtick={1,2,3},
    x tick style={xshift=-28pt},
    ytick={0,1,2,3,4,5,6,7,8,9,10},
    xticklabels={One,Two},
    x tick label style={xshift=-28pt},
    ymin=0,
    ymax=10,
    xmin=0.45,
    xmax=2.35,
    width=0.9\linewidth,
    height=5cm,
    nodes near coords, nodes near coords align={vertical},
    enlarge y limits={value=0.1,upper},
    bar width=9pt,
]
\addplot[%
    draw=black,
    fill=black
    ] coordinates
    {(1,9) (2,8)};

\addplot[%
    draw=black,
    fill=white
    ] coordinates
    {(1,7)};

\addplot[%
    draw=black,
    fill=lightgray
    ] coordinates
    {(1,4)};

\addplot[%
    draw=black,
    pattern=north west lines
    ] coordinates
    {(2,6)};

\addplot[%
    draw=black,
    pattern=dots
    ] coordinates
    {(2,4)};

\addplot[%
    draw=black,
    pattern=horizontal lines
    ] coordinates
    {(2,3)};

\legend{Main Bars, Bar 1,Bar 2,Bar 3,Bar 4,Bar 5}

\end{axis}
\end{tikzpicture}

\end{figure}

\end{document} 

相关内容