我正在用 pgfplots 制作条形图。x 轴的标签看起来不成比例,我不知道如何修复它。有什么办法可以改善它们吗?此外,如果字符串像图片一样对齐,效果会更好。
\begin{tikzpicture}
\begin{axis}[
ybar=-1cm,
xtick = {Espacio Geográfico,Democracia y Desarrollo,Chile y América en perspectiva histórica,El mundo en perspectiva histórica},
%axis x line*=bottom,
%axis y line*=left,
ymin=0,
ymax=100,
height=10 cm, width= 10 cm,
bar width=1 cm,
ylabel={\% de Aprobación},
%xlabel = {Eje Temático},
symbolic x coords={Espacio Geográfico,Democracia y Desarrollo,Chile y América en perspectiva histórica,El mundo en perspectiva histórica},
x tick label style={rotate=45, anchor=east, align=left},
nodes near coords,
nodes near coords align={vertical}
]
\addplot[black,fill=espacio] coordinates {(Espacio Geográfico,67)};
\addplot[black,fill=democracia] coordinates {(Democracia y Desarrollo, 64)};
\addplot[black,fill=chile] coordinates {(Chile y América en perspectiva histórica,44)};
\addplot[black,fill=mundo] coordinates {(El mundo en perspectiva histórica,57)};
\end{axis}
\end{tikzpicture}
现在看起来像这样
答案1
我能制作出的最好的作品就是这个,它有点脆弱,因为第一个较短的条目需要一些额外的填充。
\documentclass[margin=1]{standalone}
\usepackage{pgfplots}
\usepackage{xcolor}
\usepgfplotslibrary{dateplot}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[title = Example,
height=10 cm, width= 10 cm,
ybar=-1cm, ylabel={\% de Aprobación},
ymin=0, ymax=100, ytick distance=10, axis y line = left,
xmin=1, xmax=4, xtick distance=1, bar width=1.5 cm, axis x line = bottom,xtick=\empty,enlarge x limits=0.2,
axis background/.style={fill=yellow!10},{fill=red},
x tick label style={major tick length=0},
extra x tick style={major tick length=0,tick label style={anchor=east,align=left,text width=2cm,rotate=45}},
extra x ticks={1.2,2.2,3.2,4.2},
extra x tick labels={
Espacio ~~Geográfico,Democracia y Desarrollo,Chile y América en perspectiva histórica,El mundo en perspectiva histórica},
nodes near coords, nodes near coords align={vertical},
xticklabel shift={0.5cm}
]
\addplot+ [olive] coordinates {%
(1,67) (2,64) (3,44) (4,57)
};
\end{axis}
\end{tikzpicture}
\end{document}
根据评论更新
如果要将标题移动到 x 轴下方,请尝试第一行
\begin{axis}[title = Eje Temático, title style={at={(0.5,-0.1)}},
不过我认为标记 x 的正确方法是
\begin{axis}[xlabel=Eje Temático,every axis x label/.style={at={(0.5,-0.04)}},
或者,你可以尝试模拟字幕
\begin{axis}[xlabel=Fig1: Eje Temático,