Importação de linhas selecionadas de um conjunto de dados (sem linha de cabeçalho)

Importação de linhas selecionadas de um conjunto de dados (sem linha de cabeçalho)

Importação de linhas selecionadas de um conjunto de dados (sem linha de cabeçalho)

A importação deve usar os números das colunas em vez dos cabeçalhos das linhas. O manual do pgfplots apresenta a possibilidade de utilizar o comando \thisrowno{}que recebe um número em $\mathbbm{N}_0$.

MWE semelhante que funciona bem

O exemplo a seguir funciona (sem mensagem de erro), mas não é o pretendido:

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{filecontents}
\begin{filecontents*}{data.dat}
aasd dasdf basdf casdf
1 4 5 1
2 3 1 5
3 5 6 1
4 1 4 9
\end{filecontents*}

\begin{document}
\begin{tikzpicture}
\begin{axis}[%
    xlabel={xlabel},
    ylabel={ylabel}]
\addplot[color=blue,mark=none] 
    table [x=aasd, y=casdf, col sep=space] {data.dat};
\addplot[color=red, mark=none] 
    table [x=aasd, y=basdf, col sep=space] {data.dat};
\end{axis}
\end{tikzpicture}
\end{document}

insira a descrição da imagem aqui

Responder1

A diferença para o MWE na questão é que \thisrow{}ou \thisrowno{}precisa de um argumento diferente nas opções da tabela, ou seja, em vez de

\addplot[mark=none] 
    table [x=aasd, y=casdf, col sep=space] {data.dat};

o seguinte comando mostra o resultado idêntico

\addplot[mark=none] 
    table [x expr=\thisrow{aasd}, y expr=\thisrow{casdf}, col sep=space] {data.dat};

ou com números de linha (sem linha de cabeçalho):

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{filecontents}
\begin{filecontents*}{data.dat}
1 4 5 1
2 3 1 5
3 5 6 1
4 1 4 9
\end{filecontents*}

\begin{document}
\begin{tikzpicture}
\begin{axis}[%
    xlabel={xlabel},
    ylabel={ylabel}]
\addplot[color=blue,mark=none] 
    table [x expr=\thisrowno{0}, y expr=\thisrowno{3}, col sep=space] {data.dat};
\addplot[color=blue,mark=none] 
    table [x expr=\thisrowno{0}, y expr=\thisrowno{2}, col sep=space] {data.dat};
\end{axis}
\end{tikzpicture}
\end{document}

informação relacionada