Este es el código que tengo actualmente para generar el siguiente histograma:
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
ybar,
ymin=0,
xlabel={Classes},
ylabel={Frequency},
width=10cm,
height=6cm,
xtick=data,
xticklabels={A, B, C, D}, % Add more labels as needed
enlarge x limits=0.15,
nodes near coords, % Add labels above each bar
nodes near coords align={vertical},
nodes near coords style={font=\tiny},
]
]
\addplot[fill=blue!30] coordinates {(1, 15) (2, 12) (3, 8) (4, 10) };
\addplot[fill=green!30] coordinates {(1, 14) (2, 11) (3, 13) (4, 9) };
\end{axis}
\end{tikzpicture}
\end{document}
En lugar de eso, quiero que el gráfico se vea así con las clasificaciones en la parte superior de las barras.
Respuesta1
Bien, aquí tienes una forma de hacerlo. Llaves:
- agregar
point meta=explicit symbolic
a cada\addplot
- agregue los valores/texto que desee después de cada coordenada en
[ ]
Consulte el manual de pgfplots, cap. 4, pág. 114, Versión 1.18.1 para más detalles.
%\documentclass{article}
\documentclass[10pt,border=3mm,tikz]{standalone} % nicer for development
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
ybar,
ymin=0,
xlabel={Classes},
ylabel={Frequency},
width=10cm,
height=6cm,
xtick=data,
xticklabels={A, B, C, D}, % Add more labels as needed
enlarge x limits=0.15,
nodes near coords, % Add labels above each bar
nodes near coords align={vertical},
nodes near coords style={font=\tiny},
]
]
\addplot[fill=blue!30,
point meta=explicit symbolic
] coordinates {
(1, 15) [1]
(2, 12) [2]
(3, 8) [4]
(4, 10) [3]
};
\addplot[fill=green!30,
point meta=explicit symbolic
] coordinates {
(1, 14) [1]
(2, 11) [3]
(3, 13) [2]
(4, 9) [4]
};
\end{axis}
\end{tikzpicture}
\end{document}