![如何使用 tikzpictures 执行 \flushleft 和 \flushright](https://linux22.com/image/295953/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20tikzpictures%20%E6%89%A7%E8%A1%8C%20%5Cflushleft%20%E5%92%8C%20%5Cflushright.png)
我有两个图表,一个用 绘制pgfplots
,另一个用 绘制pgf-pie
。我想将这两个图表水平对齐,因此一个在左边,另一个在右边。我读过使用 flushleft 和 flushright 对齐,但似乎这个minipage
技巧对我来说不起作用。
这是一个例子。我以为这两个图表是并排的,但事实并非如此。关于宽度其中minipage
,我尝试了很多值。也许我理解得不正确。
\begin{minipage}{0.5 \linewidth}
\begin{flushleft}
\begin{tikzpicture}
\begin{axis}[
title=\# of players in a class,
ybar,
%enlargelimits=0.15,
legend style={at={(0.5,-0.2)},
anchor=north,legend columns=-1},
ylabel={Population},
symbolic x coords={Warrior,Wizard,Archer},
xtick=data,
nodes near coords,
nodes near coords align={vertical},
x tick label style={rotate=45,anchor=east},
]
\addplot coordinates {(Warrior,100) (Wizard,100) (Archer,200)};
\end{axis}
\end{tikzpicture}
\end{flushleft}
\end{minipage}
\begin{minipage}{0.5 \linewidth}
\begin{flushright}
Ratio of players in a class
\begin{tikzpicture}
\pie{ 25/ \textsc{Warrior} , 25/ \textsc{Wizard} , 50/ \textsc{Archer} }
\end{tikzpicture}
\end{flushright}
\end{minipage}
答案1
这个minipage
技巧仍然有效,但是
- 你在小页面之间留有多余的空格(和一个段落!),所以它们不会并排出现,
- 这些数字太大,宽度的盒子无法容纳
0.5\linewidth
。
修复问题 1:删除换行符并在行尾添加注释以抑制虚假空格。您还需要在链接的解决方案中添加 as \hfill
。minipages
修复问题 2:您可以调整环境width
中的键axis
来更改图表的大小。您还可以使用选项scale
来tikzpicture
调整饼图的大小。
\documentclass{article}
\usepackage{pgfplots,pgf-pie,lipsum}
\pgfplotsset{compat=1.10}
\fboxsep=0pt % just for showing minipage size
\begin{document}\noindent
\fbox{% just to show minipage size
\begin{minipage}[b]{0.45 \linewidth}% just slightly shrunk to show the separation
\begin{flushleft}
\begin{tikzpicture}
\begin{axis}[
title=\# of players in a class,
ybar,
width=5cm, % adjust here
enlargelimits=0.25,
legend style={at={(0.5,-0.2)},
anchor=north,legend columns=-1},
ylabel={Population},
symbolic x coords={Warrior,Wizard,Archer},
xtick=data,
nodes near coords,
nodes near coords align={vertical},
x tick label style={rotate=45,anchor=east},
]
\addplot coordinates {(Warrior,100) (Wizard,100) (Archer,200)};
\end{axis}
\end{tikzpicture}
\end{flushleft}
\end{minipage}}\hfill%
\fbox{% just to show minipage size
\begin{minipage}[b]{0.45 \linewidth}% just slightly shrunk to show the separation
\begin{flushright}
Ratio of players in a class
\begin{tikzpicture}[scale=0.5]% adjust scale parameter
\pie{ 25/ \textsc{Warrior} , 25/ \textsc{Wizard} , 50/ \textsc{Archer} }
\end{tikzpicture}%
\end{flushright}%
\end{minipage}}%
\lipsum[1-2] % just to show margins
\end{document}
您可以删除\fbox
es 以供自己使用;我只是在这里使用它们来显示 s 的大小minipage
。