TIKZ: Как создать файл с несколькими изображениями из таблицы CSV?

TIKZ: Как создать файл с несколькими изображениями из таблицы CSV?

TIZK: Как создать несколько изображений из CSV-файлов

Привет, народ. У меня есть 3 файла .csv, сгенерированных из журнала футбольного матча. Файл ball.dat содержит позиции мяча каждую секунду. Файлы blue.dat и yellow.dat содержат позиции игроков, идентификаторы и имена (также разделенные каждую секунду).

Если я разделю каждый файл по секундам, я могу сгенерировать изолированное изображение, похожее на прикрепленное. Однако я хотел, чтобы оно генерировалось автоматически из количества секунд (используя файл balls.dat в качестве ссылки).

Мне также нужно поместить имя игрока над каждым изображением робота.

Есть идеи? Следите за тем, что я уже сделал...

РЕДАКТИРОВАТЬ:Здравствуйте, я понимаю проблему с фильтром... но я думаю, что это должно быть что-то вроде этого

while not eof balls.txt
   draw the field
   draw the ball
   save the second of the ball (1 field)
   for each blue.dat record
      draw players with the same second as the ball (1 field)
   for each yellow.dat record
      draw players with the same second as the ball (1 field)
end while

Возможно?

И очень благодарен за помощь!!!

\documentclass[varwidth]{standalone}
\usepackage{tikzducks,listofitems}
\usetikzlibrary{arrows.meta, calc,backgrounds}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{geometry}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{lmodern}


\geometry{
 %paperwidth=25cm,
 left=1in,right=1in,top=1in,bottom=1in
}

\pgfplotsset{% https://tex.stackexchange.com/a/75811/121799
    name nodes near coords/.style={
        every node near coord/.append style={
            name=#1-\coordindex,
            alias=#1-last,
        },
    },
    name nodes near coords/.default=coordnode
}

\usepackage{relsize}

\usepackage{filecontents}

%second, time(microsec), x, y
\begin{filecontents}{balls.dat}
1;0.163867;853.202;411.623
2;0.665292;853.205;411.634
3;1.14752;853.253;411.666
4;1.65572;860.782;420.365
5;2.13361;944.19;510.61
\end{filecontents}

%second, time(microsec), id robot, x, y, name robot (G = goalie)
\begin{filecontents}{blue.dat}
1;0.163867;0;59.9436;447.041;G0
1;0.163867;1;1024.84;305.308;L1
1;0.163867;6;1025.1;345.362;L6
1;0.163867;11;1025.39;144.934;L11
1;0.163867;5;1025.41;184.981;L5
1;0.163867;7;857.125;378.16;L7
1;0.163867;10;1024.93;265.435;L10
2;0.665292;0;59.8692;447.08;G0
2;0.665292;6;1024.92;364.446;L6
2;0.665292;10;1012.87;283.053;L10
2;0.665292;5;1042.67;190.815;L5
2;0.665292;11;1044.36;138.297;L11
2;0.665292;7;851.479;387.303;L7
2;0.665292;1;1011.04;324.776;L1
3;1.14752;6;1030.34;432.027;L6
3;1.14752;1;989.862;364.013;L1
3;1.14752;10;986.258;316.301;L10
3;1.14752;11;1087.93;132.348;L11
3;1.14752;5;1084.32;210.705;L5
3;1.14752;7;843.719;402.942;L7
3;1.14752;0;59.9243;447.097;G0
4;1.65572;0;59.7685;447.159;G0
4;1.65572;6;1043.28;502.523;L6
4;1.65572;10;996.377;319.225;L10
4;1.65572;5;1090;224.371;L5
4;1.65572;1;997.526;402.626;L1
4;1.65572;11;1094.68;135.896;L11
4;1.65572;7;846.519;406.466;L7
5;2.13361;10;995.959;339.028;L10
5;2.13361;1;997.691;425.286;L1
5;2.13361;6;1070.78;576.922;L6
5;2.13361;5;1095.77;215.895;L5
5;2.13361;7;870.321;431.887;L7
5;2.13361;11;1062.27;151.637;L11
5;2.13361;0;59.8403;451.457;G0
\end{filecontents}

%second, time(microsec), id robot, x, y, name robot (G = goalie)
\begin{filecontents}{yellow.dat}
1;0.163867;4;129.81;604.7;L4
1;0.163867;1;1061.97;336.491;L1
1;0.163867;2;1072.86;316.706;L2
1;0.163867;11;1105.81;315.586;L11
1;0.163867;9;931.528;421.691;L9
1;0.163867;6;1125.61;315.509;L6
1;0.163867;5;1062.42;435.047;L5
1;0.163867;10;1186.28;458.823;G10
2;0.665292;4;149.446;600.335;L4
2;0.665292;9;931.478;421.653;L9
2;0.665292;2;1062.65;319.062;L2
2;0.665292;6;1130.93;315.62;L6
2;0.665292;1;1055.34;347.775;L1
2;0.665292;11;1111.41;315.564;L11
2;0.665292;5;1062.56;435.184;L5
2;0.665292;10;1187.68;484.545;G10
3;1.14752;9;931.601;421.634;L9
3;1.14752;5;1062.55;435.141;L5
3;1.14752;2;1051.66;330.343;L2
3;1.14752;11;1131.94;314.61;L11
3;1.14752;6;1152.1;315.178;L6
3;1.14752;10;1185.93;500.69;G10
3;1.14752;1;1059.89;381.66;L1
3;1.14752;4;202.01;558.01;L4
4;1.65572;4;256.971;471.213;L4
4;1.65572;11;1131.7;315.357;L11
4;1.65572;2;1031;309.405;L2
4;1.65572;10;1183.94;503.177;G10
4;1.65572;1;1050.97;401.046;L1
4;1.65572;6;1154.76;315.225;L6
4;1.65572;5;1062.53;435.206;L5
4;1.65572;9;931.799;421.595;L9
5;2.13361;9;946.568;435.222;L9
5;2.13361;5;1063.26;450.65;L5
5;2.13361;2;1019.86;284.222;L2
5;2.13361;6;1150.71;314.681;L6
5;2.13361;10;1182.65;506.68;G10
5;2.13361;1;1053.52;432.132;L1
5;2.13361;11;1130.51;315.423;L11
5;2.13361;4;286.898;366.275;L4
\end{filecontents}

\definecolor{field}{RGB}{0,156,0}
\definecolor{pinkr}{RGB}{255,8,127}

\tikzset{
   every node/.style={very thick, inner sep=0, outer sep=0,draw=white}, 
   every path/.style={draw=white, very thick},
}

\newcommand\area[2]{
\begin{scope}[shift={(#1)},transform shape, rotate=#2]
 \node[minimum width=1.2cm,minimum height=2.4cm, anchor=west] (small#2) at (0,0) {};
 \node[minimum width=.244cm, minimum height=1.2cm, anchor=east] (goal#2) at (0,0) {};
 \begin{scope}
    \tikzset{every path/.style={}}
    \end{scope}
 \end{scope}
 }


\newcommand{\Playerb}[1]{
    \ifcase#1
    \xdef\ColorList{green,pinkr,pinkr,pinkr} %0
    \or
    \xdef\ColorList{green,pinkr,pinkr,green} %1
    \or
    \xdef\ColorList{green,pinkr,green,green} %2
    \or
    \xdef\ColorList{green,pinkr,green,pinkr} %3
    \or
    \xdef\ColorList{pinkr,green,pinkr,pinkr} %4
    \or
    \xdef\ColorList{pinkr,green,pinkr,green} %5
    \or
    \xdef\ColorList{pinkr,green,green,green} %6
    \or
    \xdef\ColorList{pinkr,green,green,pinkr} %7
    \or
    \xdef\ColorList{green,green,green,green} %8
    \or
    \xdef\ColorList{pinkr,pinkr,pinkr,pinkr} %9
    \or
    \xdef\ColorList{green,green,pinkr,pinkr} %10
    \or
    \xdef\ColorList{pinkr,pinkr,green,green} %11
    \fi
    \begin{tikzpicture}[scale=0.1]
    \clip (-2.5,-2) rectangle (1.2,2);
    \draw[fill=black] (-1,0) circle (1);
    \draw[fill=blue] (-1,0) circle (0.5) node  {\tiny\sffamily \n};

    \readlist\x{-1,0,-1,-2}
    \readlist\y{-1,0,1,0}

    \foreach \Color [count=\n] in \ColorList
    {

        \draw[fill=\Color] (\x[\n],\y[\n]) circle (0.4);

    }
    \end{tikzpicture}
}

\newcommand{\Playery}[1]{
    \ifcase#1
    \xdef\ColorList{pinkr,pinkr,green,pinkr} %0
    \or
    \xdef\ColorList{pinkr, green,green,pinkr} %1
    \or
    \xdef\ColorList{green,green,green,pinkr} %2
    \or
    \xdef\ColorList{green,pinkr,green,pinkr} %3
    \or
    \xdef\ColorList{pinkr,pinkr,pinkr,green} %4
    \or
    \xdef\ColorList{pinkr,green,pinkr,green} %5
    \or
    \xdef\ColorList{green,green,pinkr,green} %6
    \or
    \xdef\ColorList{green,pinkr,green,green} %7
    \or
    \xdef\ColorList{green,green,green,green} %8
    \or
    \xdef\ColorList{pinkr,pinkr,pinkr,pinkr} %9
    \or
    \xdef\ColorList{pinkr,pinkr,green,green} %10
    \or
    \xdef\ColorList{green,green,pinkr,pinkr} %11
    \fi
    \begin{tikzpicture}[scale=0.1]
    \clip (-2.5,-2) rectangle (1.2,2);
    \draw[fill=orange] (-1,0) circle (1);
    \draw[fill=yellow] (-1,0) circle (0.5) node  {\tiny\sffamily \n};

    \readlist\x{-1,0,-1,-2}
    \readlist\y{-1,0,1,0}

    \foreach \Color [count=\n] in \ColorList
    {

        \draw[fill=\Color] (\x[\n],\y[\n]) circle (0.4);

    }

    \end{tikzpicture}
}



\begin{document}

\pgfplotstablegetrowsof{blue.dat}
\pgfmathsetmacro{\rowsBlue}{\pgfplotsretval-1}  

\pgfplotstablegetrowsof{yellow.dat}
\pgfmathsetmacro{\rowsYellow}{\pgfplotsretval-1}
\pgfmathsetmacro{\rowsYellowGoalie}{\pgfplotsretval}

\pgfplotstablegetrowsof{balls.dat}
\pgfmathsetmacro{\rowsBall}{\pgfplotsretval-1}

\begin{tikzpicture}
    \begin{scope}[on background layer]
    \fill[field] (-1,-1) rectangle (13,10);
    \node[minimum width=12cm, minimum height=9cm] (contour) at (6,4.5) {};

    % Center
    \draw (contour.north) -- (contour.south);
    \draw (contour.center) circle (0.915cm);
    \fill[white] (contour.center) circle (.5mm);

    % Areas
    \area{contour.west}{0}
    \area{contour.east}{180}

    % Corners
    \foreach \corner [count=\xi starting from 0] in {south west, south east, north east, north west}{
        \begin{scope}[rotate around={90*\xi:(contour.\corner)}]
            \draw ([xshift=1mm]contour.\corner) arc (0:90:1mm);
        \end{scope}
    }
    \end{scope}
    \tikzset{ % <- undo the settings needed for the soccer field
    every node/.style={}, 
    every path/.style={},
    }

    \begin{axis}[x=.01cm, y=.01cm, xmin=0,  ymin=0, xmax=1200,ymax=900,nodes near coords,enlargelimits=0.0] 


       \addplot [only marks,mark=*, mark options={color = orange},name nodes near coords=ball,nodes near coords={}] table [header=false, x index=2, y index=3, col sep=semicolon] {balls.dat};

       \addplot [only marks,mark=*, mark options={color = blue},name nodes near coords=b,nodes near coords={}]  table [header=false, x index=3, y index=4, col sep=semicolon] {blue.dat};

       \addplot [only marks,mark=*,mark options={color = yellow}, name nodes near coords=y,nodes near coords={}] table [header=false, x index=3, y index=4, col sep=semicolon]{yellow.dat};

    \end{axis}


    \foreach \n in {0,...,7}
    {
        \node at (b-\n.south){\Playerb{\n}};
    }

    \foreach \n in {0,...,7}
    {
        \node at (y-\n.south){\Playery{\n}};
    }
\end{tikzpicture}
\end{document}

СДЕЛАННЫЙ

решение1

Вы можете просмотреть время через balls.datцикл

 \pgfplotstableforeachcolumnelement{[index]0}\of\ballstable\as\Time{ ... }

Затем вы можете установить фильтр, который выбирает один раз,

       x filter/.code={\pgfplotstablegetelem{\coordindex}{[index]0}\of{\yellowtable}
       \unless\ifnum\pgfplotsretval=\Time
                    \def\pgfmathresult{}
                    \fi

Кроме того, вы вложили tikzpictures, поэтому я сделал Playerbи Playerypics. Однако из вашего кода не ясно, как их использовать, у вас были жестко закодированные циклы от 0 до 7. И еще несколько мелочей.

\documentclass[tikz,border=1in]{standalone}
\usetikzlibrary{arrows.meta, calc,backgrounds}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\pgfplotsset{% https://tex.stackexchange.com/a/75811/121799
    name nodes near coords/.style={
        every node near coord/.append style={
            name=#1-\coordindex,
            alias=#1-last,
        },
    },
    name nodes near coords/.default=coordnode
}

\usepackage{relsize}

\usepackage{filecontents}

%second, time(microsec), x, y
\begin{filecontents}{balls.dat}
1;0.163867;853.202;411.623
2;0.665292;853.205;411.634
3;1.14752;853.253;411.666
4;1.65572;860.782;420.365
5;2.13361;944.19;510.61
\end{filecontents}

%second, time(microsec), id robot, x, y, name robot (G = goalie)
\begin{filecontents}{blue.dat}
1;0.163867;0;59.9436;447.041;G0
1;0.163867;1;1024.84;305.308;L1
1;0.163867;6;1025.1;345.362;L6
1;0.163867;11;1025.39;144.934;L11
1;0.163867;5;1025.41;184.981;L5
1;0.163867;7;857.125;378.16;L7
1;0.163867;10;1024.93;265.435;L10
2;0.665292;0;59.8692;447.08;G0
2;0.665292;6;1024.92;364.446;L6
2;0.665292;10;1012.87;283.053;L10
2;0.665292;5;1042.67;190.815;L5
2;0.665292;11;1044.36;138.297;L11
2;0.665292;7;851.479;387.303;L7
2;0.665292;1;1011.04;324.776;L1
3;1.14752;6;1030.34;432.027;L6
3;1.14752;1;989.862;364.013;L1
3;1.14752;10;986.258;316.301;L10
3;1.14752;11;1087.93;132.348;L11
3;1.14752;5;1084.32;210.705;L5
3;1.14752;7;843.719;402.942;L7
3;1.14752;0;59.9243;447.097;G0
4;1.65572;0;59.7685;447.159;G0
4;1.65572;6;1043.28;502.523;L6
4;1.65572;10;996.377;319.225;L10
4;1.65572;5;1090;224.371;L5
4;1.65572;1;997.526;402.626;L1
4;1.65572;11;1094.68;135.896;L11
4;1.65572;7;846.519;406.466;L7
5;2.13361;10;995.959;339.028;L10
5;2.13361;1;997.691;425.286;L1
5;2.13361;6;1070.78;576.922;L6
5;2.13361;5;1095.77;215.895;L5
5;2.13361;7;870.321;431.887;L7
5;2.13361;11;1062.27;151.637;L11
5;2.13361;0;59.8403;451.457;G0
\end{filecontents}

%second, time(microsec), id robot, x, y, name robot (G = goalie)
\begin{filecontents}{yellow.dat}
1;0.163867;4;129.81;604.7;L4
1;0.163867;1;1061.97;336.491;L1
1;0.163867;2;1072.86;316.706;L2
1;0.163867;11;1105.81;315.586;L11
1;0.163867;9;931.528;421.691;L9
1;0.163867;6;1125.61;315.509;L6
1;0.163867;5;1062.42;435.047;L5
1;0.163867;10;1186.28;458.823;G10
2;0.665292;4;149.446;600.335;L4
2;0.665292;9;931.478;421.653;L9
2;0.665292;2;1062.65;319.062;L2
2;0.665292;6;1130.93;315.62;L6
2;0.665292;1;1055.34;347.775;L1
2;0.665292;11;1111.41;315.564;L11
2;0.665292;5;1062.56;435.184;L5
2;0.665292;10;1187.68;484.545;G10
3;1.14752;9;931.601;421.634;L9
3;1.14752;5;1062.55;435.141;L5
3;1.14752;2;1051.66;330.343;L2
3;1.14752;11;1131.94;314.61;L11
3;1.14752;6;1152.1;315.178;L6
3;1.14752;10;1185.93;500.69;G10
3;1.14752;1;1059.89;381.66;L1
3;1.14752;4;202.01;558.01;L4
4;1.65572;4;256.971;471.213;L4
4;1.65572;11;1131.7;315.357;L11
4;1.65572;2;1031;309.405;L2
4;1.65572;10;1183.94;503.177;G10
4;1.65572;1;1050.97;401.046;L1
4;1.65572;6;1154.76;315.225;L6
4;1.65572;5;1062.53;435.206;L5
4;1.65572;9;931.799;421.595;L9
5;2.13361;9;946.568;435.222;L9
5;2.13361;5;1063.26;450.65;L5
5;2.13361;2;1019.86;284.222;L2
5;2.13361;6;1150.71;314.681;L6
5;2.13361;10;1182.65;506.68;G10
5;2.13361;1;1053.52;432.132;L1
5;2.13361;11;1130.51;315.423;L11
5;2.13361;4;286.898;366.275;L4
\end{filecontents}

\definecolor{field}{RGB}{0,156,0}
\definecolor{pinkr}{RGB}{255,8,127}

\tikzset{
   every node/.style={very thick, inner sep=0, outer sep=0,draw=white}, 
   every path/.style={draw=white, very thick},
}

\newcommand\area[2]{
\begin{scope}[shift={(#1)},transform shape, rotate=#2]
 \node[minimum width=1.2cm,minimum height=2.4cm, anchor=west] (small#2) at (0,0) {};
 \node[minimum width=.244cm, minimum height=1.2cm, anchor=east] (goal#2) at (0,0) {};
 \begin{scope}
    \tikzset{every path/.style={}}
    \end{scope}
 \end{scope}
 }

\tikzset{pics/Playerb/.style={code={
    \ifcase#1
    \xdef\ColorList{green,pinkr,pinkr,pinkr} %0
    \or
    \xdef\ColorList{green,pinkr,pinkr,green} %1
    \or
    \xdef\ColorList{green,pinkr,green,green} %2
    \or
    \xdef\ColorList{green,pinkr,green,pinkr} %3
    \or
    \xdef\ColorList{pinkr,green,pinkr,pinkr} %4
    \or
    \xdef\ColorList{pinkr,green,pinkr,green} %5
    \or
    \xdef\ColorList{pinkr,green,green,green} %6
    \or
    \xdef\ColorList{pinkr,green,green,pinkr} %7
    \or
    \xdef\ColorList{green,green,green,green} %8
    \or
    \xdef\ColorList{pinkr,pinkr,pinkr,pinkr} %9
    \or
    \xdef\ColorList{green,green,pinkr,pinkr} %10
    \or
    \xdef\ColorList{pinkr,pinkr,green,green} %11
    \fi
    \begin{scope}[scale=0.1]
    \clip (-2.5,-2) rectangle (1.2,2);
    \draw[fill=black] (-1,0) circle (1);
    \draw[fill=blue] (-1,0) circle (0.5) node  {\tiny\sffamily #1};

    \def\listx{-1,0,-1,-2}
    \def\listy{-1,0,1,0}

    \foreach \Color [count=\n starting from 0] in \ColorList
    {

        \draw[fill=\Color] ({{\listx}[\n]},{{\listy}[\n]}) circle[radius=0.4];

    }
    \end{scope}}},
pics/Playery/.style={code={
    \ifcase#1
    \xdef\ColorList{pinkr,pinkr,green,pinkr} %0
    \or
    \xdef\ColorList{pinkr, green,green,pinkr} %1
    \or
    \xdef\ColorList{green,green,green,pinkr} %2
    \or
    \xdef\ColorList{green,pinkr,green,pinkr} %3
    \or
    \xdef\ColorList{pinkr,pinkr,pinkr,green} %4
    \or
    \xdef\ColorList{pinkr,green,pinkr,green} %5
    \or
    \xdef\ColorList{green,green,pinkr,green} %6
    \or
    \xdef\ColorList{green,pinkr,green,green} %7
    \or
    \xdef\ColorList{green,green,green,green} %8
    \or
    \xdef\ColorList{pinkr,pinkr,pinkr,pinkr} %9
    \or
    \xdef\ColorList{pinkr,pinkr,green,green} %10
    \or
    \xdef\ColorList{green,green,pinkr,pinkr} %11
    \fi
    \begin{scope}[scale=0.1]
    \clip (-2.5,-2) rectangle (1.2,2);
    \draw[fill=orange] (-1,0) circle (1);
    \draw[fill=yellow] (-1,0) circle (0.5) node  {\tiny\sffamily #1};

    \def\listx{-1,0,-1,-2}
    \def\listy{-1,0,1,0}

    \foreach \Color [count=\n starting from 0] in \ColorList
    {

        \draw[fill=\Color] ({{\listx}[\n]},{{\listy}[\n]}) circle[radius=0.4];

    }

    \end{scope}
}}}



\begin{document}

\pgfplotstablegetrowsof{blue.dat}
\pgfmathtruncatemacro{\rowsBlue}{\pgfplotsretval-1}  
\pgfplotstableread[col sep=semicolon,header=false]{blue.dat}\bluetable 

\pgfplotstablegetrowsof{yellow.dat}
\pgfmathtruncatemacro{\rowsYellow}{\pgfplotsretval-1}
\pgfmathtruncatemacro{\rowsYellowGoalie}{\pgfplotsretval}
\pgfplotstableread[col sep=semicolon,header=false]{yellow.dat}\yellowtable 

\pgfplotstablegetrowsof{balls.dat}
\pgfmathtruncatemacro{\rowsBall}{\pgfplotsretval-1}
\pgfplotstableread[col sep=semicolon,header=false]{balls.dat}\ballstable 
\pgfplotstableforeachcolumnelement{[index]0}\of\ballstable\as\Time{
\begin{tikzpicture}
    \begin{scope}[on background layer]
    \fill[field] (-1,-1) rectangle (13,10);
    \node[minimum width=12cm, minimum height=9cm] (contour) at (6,4.5) {};

    % Center
    \draw (contour.north) -- (contour.south);
    \draw (contour.center) circle (0.915cm);
    \fill[white] (contour.center) circle (.5mm);

    % Areas
    \area{contour.west}{0}
    \area{contour.east}{180}

    % Corners
    \foreach \corner [count=\xi starting from 0] in {south west, south east, north east, north west}{
        \begin{scope}[rotate around={90*\xi:(contour.\corner)}]
            \draw ([xshift=1mm]contour.\corner) arc (0:90:1mm);
        \end{scope}
    }
    \end{scope}
    \tikzset{ % <- undo the settings needed for the soccer field
    every node/.style={}, 
    every path/.style={},
    }

    \begin{axis}[x=.01cm, y=.01cm, xmin=0,  ymin=0, xmax=1200,ymax=900,nodes
    near coords,enlargelimits=0.0,
   ] 


       \addplot [only marks,mark=*, mark options={color = orange},name nodes
       near coords=ball,nodes near coords={},
       x filter/.code={\pgfplotstablegetelem{\coordindex}{[index]0}\of{\ballstable}
       \unless\ifnum\pgfplotsretval=\Time
                    \def\pgfmathresult{}
                    \fi}] table [header=false, x
       index=2, y index=3, col sep=semicolon] {balls.dat};

       \addplot [only marks,mark=*, mark options={color = blue},name nodes near
       coords=b,nodes near coords={},
       x filter/.code={\pgfplotstablegetelem{\coordindex}{[index]0}\of{\bluetable}
       \unless\ifnum\pgfplotsretval=\Time
                    \def\pgfmathresult{}
                    \fi}]  table [header=false, x index=3, y
       index=4, col sep=semicolon] {blue.dat};

       \addplot [only marks,mark=*,mark options={color = yellow}, name nodes
       near coords=y,nodes near coords={},
       x filter/.code={\pgfplotstablegetelem{\coordindex}{[index]0}\of{\yellowtable}
       \unless\ifnum\pgfplotsretval=\Time
                    \def\pgfmathresult{}
                    \fi}] table [header=false, x index=3, y
       index=4, col sep=semicolon]{yellow.dat};

    \end{axis}
%     \pic at (b-0.south){Playerb={\Time}};
%     \pic at (y-0.south){Playery={\Time}};
\end{tikzpicture}}
\end{document}

введите описание изображения здесь

Связанный контент