我怎样才能分割数组内容?

我怎样才能分割数组内容?

我想绘制一个特殊的图表,其中的数据如最小示例所示:第一行显示年份,第一列显示公司,在交叉点处可以找到一串数据。使用读取数组包,我可以提取每个单元格。此外,我还想分解数据的字符串。对于这样的任务,物品清单随之而来读取数组包。但是,我没能做到这一点。(不)工作示例导致

段落在 \dataA 完成之前结束。

使用 \numberlen(它应该显示列表条目的数量)我得到了 2,而不是 4。

有人能给出解决方案吗?

\documentclass{article}
\usepackage{readarray}
\readarraysepchar{;}
\setsepchar{,}

\begin{document}
\def\dataF{%
;2014;2015
A;36,3,29,4;35,6,27,8
B;19,4,35,7;23,10,33,7}
\readarray*\dataF\dataA[2,2]

\begin{tabular}{c|c}
    \dataA[1,1] & \dataA[1,2] \\
    \dataA[2,1] & \dataA[2,2] \\
\end{tabular}

\readlist*\numbers{\dataA[2,2]}

%\def\numbersF{\Daten[2,2]}
%\readlist*\numbers{\numbersF} % fails as well

\begin{tabular}{c|c}
    \dataA[1,1] & \dataA[1,2] \\
    \dataA[2,1] & \dataA[2,2] \\
    \dataA[2,1] & \number[1] \\
\end{tabular}

\end{document}

答案1

您有几个拼写错误和一个误解(需要\edef而不是\def)。

  1. \def\numbersF...应该\edef\numbersF...

  2. {\Daten[2,2]}应该{\dataA[2,2]}

  3. & \number[1] \\应该& \numbers[1] \\

修订后的 MWE:

\documentclass{article}
\usepackage{readarray}
\readarraysepchar{;}
\setsepchar{,}

\begin{document}
\def\dataF{%
;2014;2015
A;36,3,29,4;35,6,27,8
B;19,4,35,7;23,10,33,7}
\readarray*\dataF\dataA[-,2]

\begin{tabular}{c|c}
    \dataA[1,1] & \dataA[1,2] \\
    \dataA[2,1] & \dataA[2,2] \\
\end{tabular}

\readlist*\numbers{\dataA[2,2]}

\edef\numbersF{\dataA[2,2]}
\readlist*\numbers{\numbersF} % fails as well

\begin{tabular}{c|c}
    \dataA[1,1] & \dataA[1,2] \\
    \dataA[2,1] & \dataA[2,2] \\
    \dataA[2,1] & \numbers[1] \\
\end{tabular}

\end{document}

在此处输入图片描述

相关内容