@DavidCarlisle로부터 출력-txt 파일을 생성하는 코드를 얻었고 모든 출력 파일을 pgfplotstable에 함께 넣고 싶습니다.
그래서 나는 추가하려고
\ifnum\the\filecount=1 \pgfplotstableread[col sep=comma]{data1.txt}{\main} \else {.........} \fi
그러나 이것은 이상한 오메가만을 제공하고 \pgfplotstabletypeset[col sep=comma]{\main}
작동하지 않습니다.
내가 무엇을 해야 합니까?
\documentclass[a4paper]{article}
\usepackage{pgfplotstable}
\newcount\filecount
\newwrite\cisout
\begin{document}
{
\endlinechar=\newlinechar%
\filecount=1 %
\def\aaa{file number \the\filecount}%
\loop%
\immediate\openout\cisout=data\the\filecount.txt %
\immediate\write\cisout{%
111, 222, \aaa
}%
\immediate\closeout\cisout %
\advance\filecount by 1 %
\ifnum\filecount<5 %
\ifnum\the\filecount=1 \pgfplotstableread[col sep=comma]{data1.txt}{\main} \else\fi
\repeat %
}%
\section{pgfplotstable Test - bad}
%\pgfplotstabletypeset[col sep=comma]{\main}
\dots and some bad Omegas above\dots
\section{input Test - good}
\input{data1.txt}
\input{data3.txt}
\end{document}
답변1
카운터가 이미 진행되었을 때 수행하고 있으므로 \ifnum\filecount=1
코드가 \pgfplotstableread
실행되지 않습니다.
게다가 가까스로 실행에 옮겨도 전체가 \loop
하나의 집단이기 때문에 \main
집단이 끝나면 잊어버리게 된다.
Omegas 는 \fi
.%
목표가 무엇인지는 확실하지 않지만 작동하는 코드는 다음과 같습니다.
\documentclass[a4paper]{article}
\usepackage{pgfplotstable}
\newcount\filecount
\newwrite\cisout
\begin{document}
\filecount=1
\def\aaa{file number \the\filecount}%
\loop
\immediate\openout\cisout=data\the\filecount.txt
\immediate\write\cisout{%
111, 222, \aaa
}
\immediate\closeout\cisout
\ifnum\the\filecount=1 \pgfplotstableread[col sep=comma]{data1.txt}{\main}\fi
\advance\filecount by 1
\ifnum\filecount<5
\repeat
\section{pgfplotstable Test - bad}
\pgfplotstabletypeset[col sep=comma]{\main}
\section{input Test - good}
\input{data1.txt}
\input{data3.txt}
\end{document}
답변2
궁극적으로 이것이 당신이 달성하려는 것입니까?
\documentclass[a4paper]{article}
\usepackage{pgfplotstable}
\newcount\filecount
\newwrite\cisout
\begin{document}
{
\filecount=0
\immediate\openout\cisout=data1.txt
\immediate\write\cisout{a, b, c}% write header
\loop\ifnum\filecount<5
\advance\filecount by 1
\immediate\write\cisout{111, 222, \the\filecount }%
\repeat% no \fi needed
\immediate\closeout\cisout
\pgfplotstableread[col sep=comma]{data1.txt}{\main}%
\pgfplotstabletypeset\main
\end{document}
이 버전은 \foreach
.
\documentclass[a4paper]{article}
\usepackage{pgfplotstable}
\newwrite\cisout
\begin{document}
\immediate\openout\cisout=data1.txt
\immediate\write\cisout{a, b, c}% write header
\foreach \i in {1,..., 5}%
{\immediate\write\cisout{111, 222, \i }}%
\immediate\closeout\cisout
\pgfplotstableread[col sep=comma]{data1.txt}{\main}%
\pgfplotstabletypeset\main
\end{document}