如何更改使用 pgfplots 包实现的图表

如何更改使用 pgfplots 包实现的图表

我是使用pgfplots包的新手,我正在尝试编辑此示例,但我真的很难理解代码中每个参数的用途,例如如何在 HTML 或任何其他格式中更改特定条的颜色。我如何控制图表中每列的数量和值?我如何控制图例的确切位置?如果您有任何资源可以为初学者以简单的方式解释这一点,请向我推荐。

\documentclass{article}

\usepackage{pgfplots}
\pgfplotsset{width=7cm,compat=newest}

\begin{document}


    \begin{tikzpicture} \begin{axis}
  [ x tick label style={ /pgf/number format/1000 sep=},
ylabel=Population,
enlargelimits=0.05,
legend style={at={(0.5,-0.15)},
anchor=north,legend columns=-1},
ybar interval=0.7, ] 
\addplot
coordinates {(1930,50e6) (1940,33e6) (1950,40e6) (1960,50e6) (1970,70e6)};
\addplot
coordinates {(1930,38e6) (1940,42e6) (1950,43e6) (1960,45e6) (1970,65e6)};
\addplot
coordinates {(1930,15e6) (1940,12e6) (1950,13e6) (1960,25e6) (1970,35e6)};
\legend{Far,Near,Here} 
\end{axis} 
\end{tikzpicture}

\end{document}

谢谢

答案1

我希望能回答您的一些问题。“我如何控制图表中每列的数量和值?”这部分我不明白。图例位置在坐标系中定义,其中绘图的坐标范围从 0 到 1。因此,at={(0.5,0.95)anchor=north图例移动到中间顶部位置。我还添加了一种控制颜色的方法,从较早的答案

\documentclass{article}

\usepackage{pgfplots}
\pgfplotsset{width=7cm,compat=newest}

% from https://tex.stackexchange.com/a/37660/121799
\definecolor{RYB1}{RGB}{141, 211, 199}
\definecolor{RYB2}{RGB}{255, 255, 179}
\definecolor{RYB3}{RGB}{190, 186, 218}
\definecolor{RYB4}{RGB}{251, 128, 114}
\definecolor{RYB5}{RGB}{128, 177, 211}
\definecolor{RYB6}{RGB}{253, 180, 98}
\definecolor{RYB7}{RGB}{179, 222, 105}


\begin{document}


    \begin{tikzpicture} \begin{axis}
  [ x tick label style={ /pgf/number format/1000 sep=},
ylabel=Population,
enlargelimits=0.05,
legend style={at={(0.5,0.95)}, %<-changed
anchor=north,legend columns=-1},
ybar interval=0.7, ] 
\addplot[fill=RYB1]
coordinates {(1930,50e6) (1940,33e6) (1950,40e6) (1960,50e6) (1970,70e6)};
\addplot[fill=RYB2]
coordinates {(1930,38e6) (1940,42e6) (1950,43e6) (1960,45e6) (1970,65e6)};
\addplot[fill=RYB3]
coordinates {(1930,15e6) (1940,12e6) (1950,13e6) (1960,25e6) (1970,35e6)};
\legend{Far,Near,Here} 
\end{axis} 
\end{tikzpicture}

相关内容