
Estou traçando um conjunto de gráficos usando pgfplots
e carregando os dados de um arquivo csv. O arquivo csv contém os resultados de um teste que foi executado 10 vezes e uma coluna mostrando a média. Plotei um gráfico usando uma coluna como eixo x e outra como eixo y usando o seguinte código:
\addplot[
color=blue,
only marks,
mark=+,
mark size=2.9pt]
table[x={xColumn},y={AvgColumn}]
{file.csv};
mas o que preciso fazer é plotar todas as 10 colunas, eu poderia conseguir isso repetindo o código acima 10 vezes de cada vez usando um nome de coluna diferente y={...}
, no entanto, isso tornará o documento um pesadelo, pois tenho vários gráficos e, em alguns casos, tenho que plotar mais de um conjunto de resultados no mesmo eixo. Tentei usar y={column1,column2,...}
, mas não funcionou. Existe alguma maneira de fazer algo desse tipo, ou talvez uma maneira de definir todas as configurações uma vez e reutilizá-las 10 vezes (tendo que escrever apenas uma linha por coluna)?
Obrigado
Responder1
Você não precisa plotar as 10 colunas cada uma em uma figura separada, o PGFPLOTS pode lidar com mais de uma \addplot
nos mesmos dois eixos. Aqui está como você pode fazer isso:
\begin{tikzpicture}
\begin{axis}[<axis specifications>]
\addplot[
color=blue,
only marks,
mark=+,
mark size=2.9pt]
table[x={xColumn},y={AvgColumn}]
{file.csv};
\foreach \column in {1,...,10}{
\addplot+[] table[x={xColumn},y={column\column}] {file.csv};
}
\end{axis}
\end{tikzpicture}