
Latex no puede compilar el siguiente código con el mensaje
Could not parse input 'industry' as a floating point number, sorry. The unreadable part was near 'ndustry'..
Parece que Pgfplots no sabe que los datos de la primera columna son cadenas. ¿Hay alguna manera de corregir esto?
\documentclass{minimal}
\usepackage{pgfplots,pgfplotstable}
\begin{document}
\pgfplotstableread{
category cond othr
industry 202 72.8
transport 0 352
households 248 45.8
services 96 55.8
rest 0 30.3
}\data
\begin{tikzpicture}
\begin{axis}[xbar stacked,yticklabels from table={\data}{category}]
\addplot table[x=cond,y=category]{\data};
\addplot table[x=othr,y=category]{\data};
\end{axis}
\end{tikzpicture}
\end{document}
Respuesta1
Puedes usar ytick=data
para axis
y y expr=\coordindex
para las tramas.
\documentclass[margin=5pt]{standalone}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.15}
\begin{document}
\pgfplotstableread{
category cond othr
industry 202 72.8
transport 0 352
households 248 45.8
services 96 55.8
rest 0 30.3
}\data
\begin{tikzpicture}
\begin{axis}[xbar stacked,yticklabels from table={\data}{category},
ytick=data
]
\addplot table[x=cond,y expr=\coordindex]{\data};
\addplot table[x=othr,y expr=\coordindex]{\data};
\end{axis}
\end{tikzpicture}
\end{document}
Resultado: